- 1 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 10:18:14 ]
- ●公式サイト
Eclipse.org home www.eclipse.org/ Eclipse downloads home www.eclipse.org/downloads/ ●JDK JDK 1.4.2 java.sun.com/j2se/1.4.2/ja/download.html JDK 5 (1.5.0) java.sun.com/j2se/1.5.0/ja/download.html JDK 6 (1.6.0) java.sun.com/javase/ja/6/download.html ●関連サイト エクリプス - Eclipse Wiki (日本語) eclipsewiki.net/eclipse/ Eclipse Plugins eclipse-plugins.2y.net/eclipse/index.jsp Eclipse Plugin Central www.eclipseplugincentral.com/index.php
- 155 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 20:40:51 ]
- というか、
"hogehogehogehogehogehogehogehogehogehogehogehogehogehogehogehoge hogehogehogehogehogehogehogehogehogehogehogehogehoge"+"hoge" というコードで、足される方の "hogehogehogehogehogehogehogehogehogehogehogehogehogehogehogehoge hogehogehogehogehogehogehogehogehogehogehogehogehoge"の方が newで生成されたら大ダメージだけど、足す方の"hoge"が生成されても別に ダメージじゃないだろ appendをしていくと、足される方が長くなっていくから、足される方が生成されるのはまずい しかし、足す方をnewで生成してもたいしたダメージじゃない 結局、>>99のコードは多くの場合、気にする必要はない
- 156 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 20:44:26 ]
- おいおい、リテラル同士を+でくっつけてもStringBufferやStringBuilderは使われねーよ
"あ"+"い"はコンパイル時に"あい"になってるんだぞ
- 157 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 21:12:48 ]
- >>156
いまどきの Java コンパイラは、 "あ" + "い" を、 (new StringBuilder()).append("あ").append("い") に、コンパイル時に変換してくれるじゃないんだっけ? www.javainthebox.net/laboratory/J2SE1.5/TinyTips/StringBuilder/StringBuilder.html の受け売りだけど。 最適化オプションで、バリバリ最適化するようにしたら、 いきなり "あい" になっちゃうかもしれないけど。 試したことないので、詳しい方教えてください。
- 158 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 21:24:11 ]
- System.out.println("あ"+"い");
をecjでコンパイル(というか、eclipseでビルド) で、クラスファイル見たら public static void main(java.lang.String[] args); 0 getstatic java.lang.System.out : java.io.PrintStream [16] 3 ldc <String "あい"> [22] 5 invokevirtual java.io.PrintStream.println(java.lang.String) : void [24] "あい"になってるよ。 まあ、そうだと思った。 ちなみに、MacOSX 10.5 の Java6上で動くeclipse3.3.1です。(ecjだからOS関係ないかな?)
- 159 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 21:37:58 ]
- > sb を StringBuilder で宣言したのは、無駄なオブジェクトの生成を抑えて効率よく処理するためな筈なのに
結局、これが間違い 「オブジェクトの生成を抑える」んじゃなくて、「長い文字列データの複製を抑える」が正しい それに、>>99で行われてるオブジェクトの生成・破棄の場合、文字列データそのものは破棄されていないから たいしたネックにはなってない
|

|