sort (2)

import java.util.*;

class test {
    public static void main(String[] args) {
        ArrayList L = new ArrayList();
        L.add("a");
        L.add("c");
        L.add("b");
        System.out.println(L);
    }
}

/* 実行結果 */
[a, c, b]

また少しだけ調べた。今日は出張で時間ないので少ししか調べてないが、ArrayListをSystem.out.println()にそのまま渡すのが一応できた。toString()がどこで定義されているのか調べるつもり。ちなみに昨日の例で配列はそのまま渡すのができなかったのでforeachを使った。あと、ArrayListでまとめて初期化するやり方が分からなかったので後で調べるつもり。あと、「-Xlint:unchecked オプションを指定して再コンパイルしてください」とのワーニングが出たのでそれもチェックするつもり。


また、Pythonのcmp()関数にあたるものを探していたが各クラスごとにメソッドがあり、プリミティブに対しては、staticのcompare()メソッド、オブジェクトに対してはcompareTo()メソッドだった。


コレクションのsortはのstaticメソッドだが、List系のArrayListやLinkedList以外でソートできるのかも気になったので後で調べるつもり。あとDSUはどう実現できるのだろうか?配列やリストで要素を再帰的にcompareしてくれるのかも気になるところ。