忍者ブログ
[121] [120] [119] [118] [117] [116] [115] [114] [113] [112] [111]

DATE : 2024/04/19 (Fri)
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


DATE : 2006/07/28 (Fri)

便利な割には忘れやすいメソッドなので、ここにメモしておきます。

java.util.Arrays#asList(T...) は、配列をリスト(java.util.List)に変換するメソッドです。

詳しくは上記の javadoc に書いてありますが、このメソッド、Java SE 5 になってからはとても便利になりました。というのも、総称(Generics)可変引数Autoboxing / Auto-Unboxing が Java SE 5 から使えるようになったので、次のようにリストを簡単に生成できるようになったのです。(import 文などは省略)

List<String> stringList = Arrays.asList("abc", "def");

int 型を格納するリストも作れます。

List<Integer> integerList = Arrays.asList(1, 2, 3, 4, 5);

正確には、java.lang.Integer 型ですが、Autoboxing / Auto-Unboxing によって int 型と Integer 型は特に区別することなく使えます。

この java.util.Arrays#asList(T...) と java.util.Collections#unmodifiableList(java.util.List) を組み合わせれば、変更不可能なリストを手軽に作れてしまいます(配列の場合は、final 宣言をしても中身は書き換え可能です)。

List<Integer> integerList = Collections.unmodifiableList(
    Arrays.asList(1, 2, 3, 4, 5));

ちなみに、Java SE 1.4 で asList メソッドを使用する場合は、次のようになります。

List stringList = Arrays.asList(new String[]{"abc", "def"});
List integerList = Arrays.asList(new Integer[]{
    new Integer(0), new Integer(1), new Integer(2),
    new Integer(3), new Integer(4), new Integer(5)});

String 型を格納するリストはまだしも、Integer 型は……('A`)

PR
●この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
●この記事へのトラックバック
この記事にトラックバックする:
忍者ブログ [PR]
ブログ内検索
最近の状況
リンク
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
使用許諾
最新コメント
(08/15)
(05/04)
(03/06)
(03/04)
(09/25)
最新トラックバック
ブログ内検索
最近の状況
リンク
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
使用許諾
最新コメント
(08/15)
(05/04)
(03/06)
(03/04)
(09/25)
最新トラックバック