/ /プリミティブ配列を空にするにはどうすればよいですか? -Java、配列

プリミティブ配列を空にするには? - java、配列

私は次のクラスを持っています:

public class Person {

private String id;

private Score[] scores;

public Person() {
}

//getters and setters etc
}

すべてを削除するにはどうすればよいですか Score このオブジェクトのスコア配列内のオブジェクト?

回答:

回答№1の場合は7

配列を再初期化します new Score[size] または使用 Arrays.fill 方法。


回答№2については4

私は使用する Arrays.fill 配列をヌルで埋めます。

Arrays.fill(scores, null);

回答№3の場合は1

まさにあなたが望むものに応じて異なるオプションがあります。最も簡単な方法の1つは、配列を新しい配列に初期化することです。

 int[] scores = new Scores[]{1,2,3};
System.out.println("scores before: " + Arrays.toString(scores));
scores = new Scores[scores.length];
System.out.println("scores after: " + Arrays.toString(scores));

出力:

scores before: [1, 2, 3]
scores after: [0, 0, 0]

回答№4の場合は0

そこには

配列。fill(myArray、null); 独自に行うこととは異なります(すべての要素をループしてnullに設定します)。これはネイティブではなく、これを実行する純粋なJavaコードですが、ライブラリです多分それが機能する場合」はあなたが意味したものです。

これはもちろん、「サイズを変更することはできません配列(ゼロ)、それが「空」の場合。配列のサイズは固定されているため、「新しい」配列の次元を変えたい場合は、参照を新しい配列に再割り当てするのが最善です。他の答えは示しています。さらに良いことに、可変サイズを持つことができるArrayListのようなListタイプを使用します。