addAll の例

Collections クラスの addAll メソッドは 5.0 以降でサポートされています。

【例1】 List インターフェースを実装している java.util.ArrayList クラス の例を掲げます。

プログラム例 AddAllDemo1.java

実行結果

AddAllDemo1-1.gif

【例2】

for/in 構文で(Iterator の順に)アクセスしてみましょう。

プログラム例 AddAllDemo2.java

実行結果は同じです。

AddAllDemo2-1.gif

【例3】 SortedSet インターフェースを実装している java.util.SortedSet クラス の例を掲げます。

プログラム例 AddAllDemo3.java

実行結果

AddAllDemo3-1.gif
セットですから要素の重複が許されません。
addAll の値は、ひとつでも追加できた場合は true (24行目)、 すべてが追加できなかった場合が false (25、27行目)となっています。

【例4】 自分で定義したクラス Unit について addAll をしてみましょう。

プログラム例 AddAllDemo4.java

実行結果

AddAllDemo4-1.gif

【例4】 上記の Unit の 子クラス OrderedUnit を TreeSet<Unit> に addAll してみましょう。

プログラム例 AddAllDemo4.java

実行結果(Unit に関連する部分は同じ結果です。)

AddAllDemo5-1.gif
cabinet の要素が OrderedUnit になっているようにも見えますが(40行目の出力)、 cabinet の要素に対して、OrderedUnit のメソッドは使えません(下図)。

確認用プログラム AddAllDemo5e.java のコンパイル結果

AddAllDemo5e-1.gif

Top Page
更新日:2005-07-25