请问大神,下面这个输入为什么输出都是零0?
//输入不确定几行数据,但是知道每行都是6个数字,结束的标志是一行为6个0:0 0 0 0 0 0
import java.util.ArrayList;
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
ArrayList<int[]> arrayInteger = new ArrayList<int[]>();
int[] ins = new int[6];
String s = new String();
while(input.hasNextLine()){
s = input.nextLine();
int count = 0;
for(int i = 0; i < s.length(); ++i, ++i){
char c = s.charAt(i);//逐个获取字符串中的字符
ins[i/2] = (int)(c-'0');//字符数字-字符0就是实际的数字值,赋值给数字数组
if((int)(c-'0') == 0) ++count;
}
arrayInteger.add(ins);
if(count == 6) break;
}
input.close();
int[][] datas = new int[arrayInteger.size()][6];
for(int i = 0; i < arrayInteger.size(); i++){
datas[i] = arrayInteger.get(i);
for(int j = 0;j < 6; j++){
System.out.print(datas[i][j]);
System.out.print(' ');
if(j == 5) System.out.println();
}
}
}
}
但是问题来了,为什么我输入下面的内容:
1 2 3 4 5 6
0 0 0 0 0 0
输出的结果:
0 0 0 0 0 0
0 0 0 0 0 0
也就是我需要结束标志的内容,都变成了0,这个很奇怪?
查看13道真题和解析