当我想使用一个数组来存储来自扫描仪的输入时,
但不知道它包含多少个令牌,难道没有任何方法可以获得存储在数组中与令牌大小完全相同的所有输入吗?
情况是这样的。
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int[] arr; // just declare not initialize
int i = 0;
while(sc.hasNextInt()){
arr[i++] = sc.nextInt(); // of course it would cause an error,
// but as I don't know how many tokens it has,
// I can't initialize like
// int[] arr = new int[number of tokens]
}
}
在这种情况下,我首先声明了一些数组指针arr,但不知道令牌的大小,所以无法初始化它。相反,我在寻找方法——首先创建指针,然后存储所有数据,然后原始指针指向输入存储数组。
有什么办法可以解决这个问题吗?