タグ

ブックマーク / nagise.hatenablog.jp (4)

  • Javaジェネリクス再入門 - プログラマーの脳みそ

    ジェネリクスでは、「型」を変数にした「型変数」というものを取り扱う。型変数で何が嬉しいかというと、メジャーな例ではコレクションAPIが挙げられる。java.util.Listとかjava.util.Mapとかのデータを格納するタイプのユーティリティクラスのことだ。 2004年にJavaのバージョンが5.0となるまでは、Javaにはジェネリクスの機能はなかった。なので、Listにデータを格納し、取得する場合は List list = new ArrayList(); list.add("hello!"); String str = (String) list.get(0); といったソースコードになる。 add()の引数はObject型で宣言されており、どんな参照型でもadd()することができた。 get()の戻り値もObject型で宣言されておりキャストが必要だった。このキャストはプログラ

    Javaジェネリクス再入門 - プログラマーの脳みそ
  • Javaでセミコロンなしでプログラムを書く - プログラマーの脳みそ

    java-ja温泉2日目の夕。 @yoshiori がpythonのワンライナの楽しさを得々と語っていた。 @yoshiori「Brainf*ck を Python-oneliner にコンパイルする Python-onelinerを書いたけど全ッ然反応がなかった。こんなに面白いのに!」 @yamashiro「だって分かりにくいもん」 西尾先生が通常ワンライナではtry-catchが使えないけど子プロセス立ち上げて例外を出力してパースすればエラー処理ができるとか(http://www.nishiohirokazu.org/blog/2006/08/python_12.html参照)そんな話で盛り上がる中、 @nagise「Javaでセミコロンなしでプログラムが書けるような気がしてきた」 Javaの場合、普通にセミコロン(;)でマルチステートメントにかけるのでただ1行にしようというなら改行

    Javaでセミコロンなしでプログラムを書く - プログラマーの脳みそ
    hisasann
    hisasann 2010/03/25
    強烈に面白い
  • Java変態文法最速マスター - プログラマーの脳みそ

    Java基礎文法最速マスター - いろいろ解析日記をリスペクト。 Javaの変態文法・技法一覧です。Javaの基礎をある程度知っている人はこれを読めばJavaの変態をマスターしてJavaを書くことができるようになっています。簡易リファレンスとしても利用できると思いますので、これは足りないと思うものがあれば教えてください。 1.基礎 エンクロージング型内部classの作成 外部classのインスタンスに紐付くインスタンスを生成します。外部クラスのインスタンス - 内部クラスのインスタンス間に、クラス - インスタンスのような関係を持たせることができます。 public class Outer { public class Inner { } } というようなクラスを作った場合、 Outer o = new Outer(); Inner i = o.new Inner(); となります。new

    Java変態文法最速マスター - プログラマーの脳みそ
    hisasann
    hisasann 2010/02/03
    MadなJavaの使い方いろいろ
  • プログラミングの道具を考察する - プログラマーの脳みそ

    構造化定理で言われるような順次・反復・分岐というプログラミングの基礎の基礎と言える要素を、たかだか数個組み合わせることで対処できるようなコーディングというのは、設問に対するパターンマッチングで回答することができる。 受験勉強でもそうなのだが、こうした問題のパターンに対して定型の答えを返す、という機械的な対処は、黙々とパターンを暗記することである程度の成果が出るわけだが、応用がまるで効かない。 必要となった時に、応用することができるかどうかがコーダとプログラマの分水嶺のように思う。 プログラマとコーダの狭間 - プログラマーの脳みそ と述べたように、プログラミングの技能というのは応用力の類だということ。 この稿で言う「プログラミングの道具」というのはエディタとかデバッガとかの話ではなく、プログラムを組み立て上で用いるプログラミングパラダイム、つまり思考の道具のことを指す。 道具の獲得と使い方

    プログラミングの道具を考察する - プログラマーの脳みそ
  • 1