[英]need help in java/ file IO
我不知道我的代码有什么问题,它没有以10行10值的形式向用户显示列表?
编写第二个程序,该程序从“ values.txt”中读取这100个数字并将其放入ArrayList中。
这是代码:
class Program2 {
public static void main(String args[]) throws Exception {
ArrayList<Integer> list = new ArrayList<Integer>();
int i = 0;
try {
Scanner read = new Scanner(new File("values.txt"));
do {
String line = read.nextLine();
list.add(Integer.parseInt(line));
} while (read.hasNext());
} catch (FileNotFoundException fnf) {
System.out.println("file was not found");
}
bubbleSort(list);
for (int s : list) {
i++;
if (i == 10) {
System.out.println();
i = 0;
}
System.out.print(s + " ");
}
}
//sorting the values
public static void bubbleSort(ArrayList<Integer> list) {
boolean swapped = false;
do {
swapped = false;
for (int i = 0; i < list.size() - 1; i++) {
if (list.get(i) > list.get(i + 1)) {
int swap = list.get(i);
list.set(i, list.get(i + 1));
list.set(i + 1, swap);
swapped = true;
}
}
} while (swapped);
}
}
迭代时出错,每行打印9个值,而不是10。它应该是:
for (int s : list) {
if (i == 10) {
System.out.println();
i = 0;
}
i++;
System.out.print(s + " ");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.