gpt4 book ai didi

java - 除非我两次请求相同的输入,否则为什么会出现错误? ( java )

转载 作者:行者123 更新时间:2023-12-01 04:27:30 26 4
gpt4 key购买 nike

我运行的程序只有一个 quit = input.nextLine();,但这会导致错误。但是,如果我使用该行两次,则不会发生错误,并且程序将按预期运行。为什么?

错误消息:线程“main”中出现异常 java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:0
在 java.lang.String.charAt(String.java:686)
在 testjava.Test.main(Testjava.java:24)

    import java.util.Scanner;

public class Test
{
public static void main(String[] args)
{
boolean x = true;
boolean y = true;
Scanner input = new Scanner(System.in);

while (x) {
while (y) {
System.out.print("Enter -1 to quit ");
int val = input.nextInt();
if (val == -1)
y = false;
}

System.out.print("Are you sure you want to quit? (y/n) ");
String quit = input.nextLine();
quit = input.nextLine();

if (quit.charAt(0) == 'y')
x = false;
}
}

最佳答案

您应该使用 input.next()。

input.nextLine() 跳过当前行并输出被跳过的行。

关于java - 除非我两次请求相同的输入,否则为什么会出现错误? ( java ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18393358/

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