因为java当中创建数组时大小必须固定,而你这里的需求是输入元素个数不定,所以可以考虑先用List之类的集合类来存储输入元素,等输入结束时候再转为数组。
示例:
Scanner scanner = new Scanner(System.in);//基于系统输入创建一个扫描器
List elements = new LinkedList(); //创建一个链表List用来接收元素
while(scanner.hasNext()){ //循环:当扫描到有下一个元素的时候
int element = scanner.nextInt(); //获得下一个元素并作为整数
if(element==0){//如果等于0,就是输入结束
break; //退出while循环
}else{
elements.add(element); //否则放入集合中
}
}
//循环结束后,将集合转为数组
Integer[] intArray = elements.toArray(new Integer[0]);