gpt4 book ai didi

Java分隔符问题

转载 作者:行者123 更新时间:2023-12-02 03:14:26 25 4
gpt4 key购买 nike

我在使用分隔符时遇到问题。我的代码如下:

Scanner in=new Scanner(System.in);
in.useDelimiter("\\D");
int x,y,z;
System.out.println("Enter 3 digits: ");
x=in.nextInt();
y=in.nextInt();
z=in.nextInt();
System.out.println(x + " " + y + " " + z);
in.close();

请原谅我缺乏分隔符方面的经验,但我只能让我的程序用 1 个字符(而不是两个)分隔输入。该程序必须能够接受如下输入:

1 2 31, 2, 3。目前它可以处理 1 2 31,2,3 但不能处理 1, 2, 3

最后一种情况中的额外空格一定会导致它失效。你如何处理这个问题?

此外,我必须能够接受可变数量的整数作为输入(最多 100 个整数),并将它们插入队列中。显然我定义的三个变量是不够的,但明确定义 100 也有点矫枉过正。处理这个问题最有效的方法是什么?提前致谢。

最佳答案

尝试将分隔符更改为 \\D+(即 in.useDelimiter("\\D+");)。

编辑:
目前,您要求分隔符分割为单个非数字字符。通过添加 +,您可以告诉它分割成连续的非数字字符 block 。分隔符是一个正则表达式,这里有更多信息: www.regular-expressions.info/tutorial.html

关于Java分隔符问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40512828/

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