Java †入手 †Sun Micro Systemsから無料でダウンロード可能。 開発環境 †Eclipse †無料の統合環境としてEclipseが有名。 プラグインにより機能拡張できる思想で、Java以外の言語にも対応する。 Eclipse自体がJavaアプリケーションなので予めJavaをインストールしておく必要がある。
文字列操作 †文字列の比較 †Javaでは文字列通しの比較を、String#equals()メソッドを使用する。 「==」を使用してもエラーは出ないが、意味合いが異なる。 String str1 = "HELLO"; String str2 = "HELLO"; String str3 = new String("HELLO"); System.out.println("(str1 == str2) = " + (str1 == str2) ); System.out.println("(str1.equals(str2)) = " + (str1.equals(str2)) ); System.out.println("(str1 == str3) = " + (str1 == str3) ); System.out.println("(str1.equals(str3)) = " + (str1.equals(str3)) ); このプログラムの結果は以下のようになる。 (str1 == str2) = true (str1.equals(str2)) = true (str1 == str3) = false (str1.equals(str3)) = true str1とstr2は同じインスタンスを指しており「==」でtrueとなる。しかし、 str3は新たにインスタンスを生成しているため「==」ではfalse。 つまり「==」は参照型が指すインスタンスが同じかどうかの比較、「equals()」はインスタンスの持つ意味(文字列そのもの)の比較となる。 コレクション †HashMap †サイズが増える際に自動的にメモリ拡張を行う仕組みが実装されているが、 予め必要な容量が分かっている場合はコンストラクタで指定しておくことができる。メモリの再確保の時間を省くことが出来る。 再確保のタイミングは、確保されたメモリの75%に達したとき。従って、初期要領として逆数である134%程度の値を与えておけばメモリの再確保が行われないことになる。 再確保を行うタイミング(75%)の方を指定することも可能。 参考URL †
|