gpt4 book ai didi

java:扫描仪在使用useDelimiter时要求额外的值

转载 作者:行者123 更新时间:2023-11-30 10:13:16 25 4
gpt4 key购买 nike

所以我想创建这个存储 4 个值的程序。第一个是字符串,其余 3 个是整数。但是,当我输入 4 个值并按回车键时,出现错误 java.util.InputMismatchException 但是当我输入 5 个值时,我得到了我的值的结果。例如,假设我输入了以下值:

Japan,1,2,3

我会收到 java.util.InputMismatchException 错误。如果我输入以下值:-

Japan,1,2,3,4

我得到了我想要的输出:-

Japan,1,2,3

为什么会这样?这是我的代码

public class satisfaction {

public static void main(String args[])
{
Scanner src= new Scanner(System.in);
src.useDelimiter("\\,|\\n");
String name=src.next();
int a=src.nextInt();
int b=src.nextInt();
int c=src.nextInt();
System.out.println(name+","+a+","+b+","+c);
}

}

最佳答案

我自己对此进行了一些测试,我认为模式中的 \n 与您的控制台使用的行结尾不匹配。

对我来说,我必须改用 \r\n,但您也可以使用 System.lineSeparator(),例如像这样:

src.useDelimiter(",|" + System.lineSeparator());

关于java:扫描仪在使用useDelimiter时要求额外的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51390695/

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