gpt4 book ai didi

java - 不使用扫描仪将文本数据存储到java数组中

转载 作者:太空宇宙 更新时间:2023-11-04 14:23:11 25 4
gpt4 key购买 nike

我的代码只是打印出我在另一个程序中创建的列表中的最后一个数字。我需要帮助将数据存储到数组中,以便之后可以对其进行排序。编辑:我需要从“numbers.txt”文件中获取数据并将其存储到数组中。

public static void main(String[] args) throws Exception {
int numberArray = 0;
int[] list = new int[16];

File numbers = new File("numbers.txt");
try (Scanner getText = new Scanner(numbers)) {
while (getText.hasNext()) {
numberArray = getText.nextInt();
list[0] = numberArray;
}
getText.close();
}
System.out.println(numberArray);
int sum = 0;
for (int i = 0; i < list.length; i++) {
sum = sum + list[i];
}
System.out.println(list);
}
}

最佳答案

代码中的更正。

1.) 在 while 循环内,list[0] = numberArray;,将继续在同一索引 0 上添加元素,因此 lat 值将被覆盖。所以像list[i] = numberArray;这样的东西会起作用,并且在while循环增加i。请注意此处的 ArrayIndexOutOfBound 异常

public static void main(String[] args) throws Exception {
int numberArray = 0;
int[] list = new int[16];

File numbers = new File("numbers.txt");
int i =0;

// Check for arrayIndexOutofBound Exception. SInce size is defined as 16

try (Scanner getText = new Scanner(numbers)) {
while (getText.hasNext()) {
numberArray = getText.nextInt();
list[i] = numberArray;
i++;
}
getText.close();
}
System.out.println(numberArray);
int sum = 0;
for (int i = 0; i < list.length; i++) {
sum = sum + list[i];
}
System.out.println(list);
}
}

关于java - 不使用扫描仪将文本数据存储到java数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26963865/

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