gpt4 book ai didi

java - 这个 while 循环中的错误是什么?

转载 作者:行者123 更新时间:2023-12-01 07:21:05 25 4
gpt4 key购买 nike

我正在根据我的一段旧代码对 while 循环进行建模,因为我有点忘记了如何做到这一点。这是旧的作品:

    Scanner s2 = new Scanner(System.in);
Q1 = s2.nextDouble();
while (Q1 < 1 || Q1 > 5) {
System.out.println("");
System.out.println("ERROR: Please enter a number between 1 and 5.");
System.out.println("");
System.out.println(question1);
Q1 = s2.nextDouble();
}

这相当简单。这是我现在正在写的文章:

System.out.println("Welcome to " + appName + "!");
System.out.println("To begin, please select a username.");

Scanner usernameScanner = new Scanner(System.in);
String username = usernameScanner.nextLine();

System.out.println("Your username will be " + username + ".");
System.out.println("Is that correct?");

while(username.length() < 3){
System.out.println("Error: Your username must be more than 3 characters.");
System.out.println("Please select a username.");
String username = usernameScanner.nextLine();

}

我收到一条错误消息:

“线程“main”java.lang.Error中出现异常: Unresolved 编译问题:重复的局部变量用户名”

我以为修复起来很简单,但我很困惑。我不是在第一部分重新定义了一个局部变量吗?为什么第二个不起作用?

提前谢谢您。

最佳答案

在循环中while(username.length() < 3) ,行 String username = usernameScanner.nextLine();需要修改为username = usernameScanner.nextLine(); 。而不是修改username中的值,您声明了一个同名的新变量,导致了错误。

关于java - 这个 while 循环中的错误是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37622762/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com