したがって、リンクされたリストを作成し、 add メソッドを使用してエントリごとにエントリを入力する方法を知っています。ただし、エントリごとにエントリを追加したくありません。リストに初期値を持つリンクリストを宣言する方法はありますか?
たとえば、リストに 1.0 と 2.0 を含めたい場合、1 行でできることはありますか? 何かのようなもの:
List<Double> temp1 = new LinkedList<Double>(1,2);
したがって、リンクされたリストを作成し、 add メソッドを使用してエントリごとにエントリを入力する方法を知っています。ただし、エントリごとにエントリを追加したくありません。リストに初期値を持つリンクリストを宣言する方法はありますか?
たとえば、リストに 1.0 と 2.0 を含めたい場合、1 行でできることはありますか? 何かのようなもの:
List<Double> temp1 = new LinkedList<Double>(1,2);
この方法でそれを行うことができます:
List<Double> temp1 = new LinkedList<Double>(Arrays.asList(1.0, 2.0));
LinkedList
type のパラメーターを受け入れる次のコンストラクターがありますCollection
。
public LinkedList(Collection<? extends E> c)
このコンストラクターは、「指定されたコレクションの要素を含むリストを、コレクションの反復子によって返される順序で構築します。」
したがって、このコンストラクターを使用して を宣言し、LinkedList
宣言時に値で初期化することができます。任意のCollection<Double>
タイプのインスタンスを提供できます。
値のセットのみがあり、Collection
オブジェクトがない場合は、提供された値のセットを変換して返すjava.util.Arrays
静的メソッドを持つクラスを使用できます。以下の例を参照してください。asList()
List
List<Double> list = new LinkedList<Double>(Arrays.asList(1.2,1.3,3.2));
のインスタンスが必要な場合はList<Double>
、値に小数点以下を指定する必要があります。それ以外の場合は、値を使用して のインスタンスを取得しList<Integer>
ます。
次のようなメソッドを作成することもできます
static <T> LinkedList<T> createLinkedList(T...elements) {
LinkedList<T> newList = new LinkedList<T>();
for (T el : elements) {
newList.add(el);
}
return newList;
}
そしてそれを一緒に使用してください:
LinkedList<Integer> a = createLinkedList(1, 2, 3);
for (Integer item : a) {
System.out.println(item);
}