java中怎么不停的將輸入的數存入數組不知道長度?
1.先明確一點你數字與數字之間是有分隔符號的吧,比如逗號,或者空格..
2.回車是\r\n
3.其實你控制臺輸入的,都可以用字符串形式接受,然后根據你輸入的間隔符號(比如逗號和空格)
然后進行切割,nextLine這函數就偵測回車符號的,一旦你回車就算一行結束!
4.不知道數組長度,解決辦法很多:
其實你一切割,就能拿到你輸入數字的個數了,就是切割后的數組長度;
辦法1:你不能輸入1024個長度單位的數組吧?數組就定那么長,就可以了,取的時候取有有效位即可!
辦法2:用容器,ArrayList存,這玩意底層也是數組特點就是自增長,就是它看長度不夠就立馬加長一點
辦法3:你還是用數組,根據方法2的原理,先定義10個長度,然后進行判斷,切割后的數組長度超過
你定義的長度,就在數組內部頂一個臨時的新數組,長度也自增長,然后在把臨時數組提交給原有
的數組即可!
算了寫一個簡單點的:輸入的時候數字之間逗號隔開,我只是用逗號在切割,當然你也可以換成其他
符號!
import java.util.Scanner;
public class NumberTest {
public static void main(String[] args) {
String str=new Scanner(System.in).nextLine();
String[] srr=str.split(",");
ArrayList<Number> list=new ArrayList<>();
for (int i = 0; i < srr.length; i++) {
list.add(Integer.valueOf(srr[i]));
}
System.out.println(list);
}
}