private static ArrayList<Integer[]> inputMatirx() {
ArrayList<Integer[]> matrix = new ArrayList<>();
Scanner in = new Scanner(System.in);
System.out.println("Please input the matrix.");
while (in.hasNextLine()) {
String[] row = in.nextLine().split(" ");
Integer[] r = new Integer[row.length];
for (int i = 0; i < row.length; i++) {
r[i] = Integer.parseInt(row[i]);
}
matrix.add(r);
}
in.close();
System.out.println("Input end.");
return matrix;
}
我想通过这个方法输入一个矩阵
但是每次输到最后一行按两次回车想结束输入时,会报错,请问如何解决?
String line=sc.nextLine();
if(line.length()>0){
String[]arr=line.split(" ");
for(int i=0;i<arr.length;i++){
row.add(Integer.parseInt(arr[i]));
}
list.add(row);
}else {
break;
}
可以加个结束条件啊,比如输入0时,跳出循环就好了
类型转换异常,parseInt,把空字符串转成int是不允许的