为了账号安全,请及时绑定邮箱和手机立即绑定

Java while 循环中的用户验证测试

Java while 循环中的用户验证测试

繁星coding 2021-10-13 16:02:35
我正在制作我的第一个 java 项目,以检查用户输入的单词(没有数字或符号)是否是回文。我使用了这里概述的方法:https : //stackoverflow.com/a/4139065/10421526作为逻辑。该代码按请求工作,但在无效输入后我无法重新提示用户,因为它似乎“阻止”了我的代码接受有效输入的能力,打印了我的“重试”消息。我也尝试过 do while 版本,但最终出现格式错误。我认为我定义 stringOut 变量的方式给我带来了麻烦,但我不知道如何更改它而不像 eclipse 所说的那样进行重复。这是经过数十次循环尝试后我能得到的最接近的结果:import java.util.Scanner;public class PalindromTester {    public static void main(String[] args) {        // TODO Auto-generated method stub        Scanner in = new Scanner(System.in);        System.out.println("Input word to test: ");        String stringIn = in.nextLine();        String stringOut = new StringBuilder(stringIn).reverse().toString();         while (!stringIn.matches("[a-zA-Z]+")) {            System.out.println("Invalid input, try again.");            in.next(); //stops infinite error loop        }        if ((stringIn.equalsIgnoreCase(stringOut))) {            System.out.println("Palindrome detected");            System.out.println("You entered: " + stringIn);            System.out.println("Your string reversed is: " + stringOut);}       else {            System.out.println("Not a palindrome");}    }}
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 145 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信