gpt4 book ai didi

java - 如何使用扫描仪类将值获取到字符数组中?

转载 作者:行者123 更新时间:2023-12-01 19:50:23 25 4
gpt4 key购买 nike

我正在尝试使用扫描器类将文件内容读入字符数组,但我不断从代码中收到字符串索引越界错误,我不确定出了什么问题

    File fileName = null;
if(0<args.length) {
fileName = new File(args[0]);
}
Scanner s = null;
try {
s = new Scanner(fileName);
s.useDelimiter(",");
} catch (FileNotFoundException e) {
e.printStackTrace();
}

char[]array = new char[26];
while(s.hasNext()) {
for(int i=0; i<27; i++) {
array[i] = s.next().charAt(i);
}
}

最佳答案

据我所知,您的代码相当于以下代码,没有越界异常

char[]array;
while(s.hasNext()) {
array = s.next().toCharArray();
}

但是,在 while 循环之后,您的数组将仅等于最后一次扫描的值。

如果您有单独的逗号分隔字符,则可以使用以下内容。您不需要在现有循环中添加循环

char[]array = new char[26];
int i = 0;
while(s.hasNext()) {
array[i++] = s.next().charAt(0);
}

无论如何,我建议using StringTokenizer rather than a Scanner

关于java - 如何使用扫描仪类将值获取到字符数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51489993/

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