ポリテクカレッジでの講義メモ
Arrays.sort()を使う例題として、Fileのソートを実施。ベースにしたプログラムはここに書いたやつ。
≫ポリモーフィズム
メニューバーに「ソート」を追加して、「名前」・「サイズ」・「日付」・「種類」を選択する。
メニューに追加するメニュー項目は、AbstractActionを継承して実装。
public class SortByNameAction extends AbstractAction { private JList list; public SortByNameAction(JList list) { super("名前"); this.list = list; } public void actionPerformed(ActionEvent e) { // 要素の配列を取得 Arrays.sort(elements, new FileNameComparator()); // ソートした結果をJListに反映 } }
public class FileNameComparator implements Comparator{ public int compare(File f1, File f2) { return f1.compareTo(f2); } }
とか。
あと、FileSizeComparator、FileDateComparator、FileTypeComparatorを作成。
FileTypeComparatorはけっこうめんどい。ディレクトリ<拡張子なし<拡張子比較なので。
あと、SimpleDateFormatを使ったStringとDateの相互変換とか。ファイルの更新時刻をDate#toString()で表示するのも味気ないので。
Collections.sort()で、Listをソートするのもやりたかったけど、時間が足りなかった。
今日はスレッドとJDBCのさわり。
このサイトを参照しながら講義する予定。
≫スレッドマルチスレッドプログラミング-TECHSCORE-