簡體   English   中英

如何設置Java數組長度

[英]How To Set Java Array Length

我有點困惑。

我正在編寫一個程序,其中我需要一個array來保存值,但是值是用戶定義的,我想打印該數組,但它會打印該數組值:

1 0 0 0 0 0

因為我定義了數組的長度。 那么,如何刪除多余的0並僅打印用戶定義的值?

有兩種解決方案

  1. 您可以使用java.util.ArrayList來存儲您的條目。 ArrayList可以增長和縮小到您需要的任何大小
  2. 您可以首先創建一個比想像的要大的int [],然后定義int arrLength並使用它來嘗試您的數組大小

如果您想要一個動態調整大小的集合,我建議您使用一個List (例如ArrayList )。

這是其工作方式的簡單示例:

List<Integer> list = new ArrayList<Integer>();

list.add(1);
list.add(2);
list.add(3);

System.out.println("My List:" + list);

輸出:

My List:[1, 2, 3]

您必須導入java.util.ArrayListjava.util.List才能使用它們。

您還可以像這樣遍歷List

for(int val : list) {
    System.out.println("value: " +val);
}

輸出:

value: 1
value: 2
value: 3

或使用索引進行迭代:

for(int i=0; i<list.size(); i++){
    System.out.println("value " + i + ": " + list.get(i));
}

輸出:

value 0: 1
value 1: 2
value 2: 3

(請注意,索引基於0;即,它們從0開始,而不是1)

有關更多信息,請閱讀上面鏈接的ListArrayList的兩個Javadocs。

您可以使用動態數組,該數組由java實現為ArrayList

另一種方法(盡管在大多數情況下更糟糕)是找出數組的“所需”長度,並通過使用Arrays.copyOfRange()方法創建一個新數組來獲取其中的一部分。

似乎您正在使用自定義打印方法,您可以在達到特定索引后停止打印。


附帶說明,您可以通過使用Arrays.toString(array)將數組轉換為String並打印此String來輕松打印數組

簡單的方法是這樣的:

List list = new ArrayList(5);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM