タグ

Javaに関するsucroseのブックマーク (4)

  • J2SE 5.0 Tiger 虎の穴 Generics

    Generics はすでに雑誌などで解説記事が書かれているのでご存知のかたも多いかと思います。 Generics というのは C++ のテンプレート機能のような機能で、ひとことでいえばクラス (インタフェース)、メソッドのパラメータ化ということができます。 といってもよく分からないですね。 それでは実際に例を示しましょう。 コレクションは要素を Object クラスのオブジェクトとして保持するために、使うときにはいちいちキャストを行わなくてはいけません。 List list = new ArrayList(); list.add(new Integer(10)); int x = ((Integer)list.get(0)).intValue(); // キャストが必要

  • J2SE 5.0 Tiger 虎の穴 拡張 for 文

    JSR-201 のはじめは拡張 for 文です。 普通に for 文使っていると、別に拡張なんかしなくてもいいと思うんですが... 何が拡張したかというと、要素がある限りループをするという動作が加わりました。これは Basic の for ... each 文、C# の foreach 文に相当するものです。 この拡張 for 文を使えば、今まで Iterator インタフェースを使っていたところが劇的に簡単に書けるようになります。

  • J2SE 5.0 Tiger 虎の穴 Autoboxing

    私はひそかに JSR-201 の中で、1 番簡単に使えてかつ 1 番便利なのが Autoboxing だと思っています。ここで書いている時点でひそかでも何でもないですが... なにはともあれ、便利です。 何をやってくるかというと、プリミティブとそのラッパークラス間の変換を自動でやってくるのです。どういうことかというと、こんなことです。

  • a geek - 配列のキャスト(Java)

    java初心者であることを痛感しました。 以下のコードがClassCastExceptoinで動かないのです。 ArrayList list = new ArrayList(); list.add("hoge"); String[] array = (String[]) list.toArray();ArrayListから戻ってくる実体はObjectなので、Stringにはできないと。 String[] array = (String[]) result.toArray( new String[result.size()]);ならOKでした。String[]の実体を作ってあげるわけです。toArray()の中ではarraycopy()してます。

    a geek - 配列のキャスト(Java)
  • 1