OS:Windows Vist
Java 6SE
NetBeens 6.7.1 を使っています
書籍サンプル入力しながら学習しています
書籍は 毎日コミュニケーションズ 創るJava 改訂第3版
NetBeens でつくって学ぶ
JavaGUI & Webアプリケーション
です
書籍の68ページに
解説にJavaは型を厳密に扱うとあり
直接 String型をint型に扱えないから Integer.parseInt のような関数(メソッド)
を使うのような解説があったのですが
int number = Integer.parseInt(str);
int result = number + 12;
taOutput.append(number + と12を足すと + result + \n); ←ここが疑問
appendの引数はstringのようにIDE補完機能解説に表示されます
numberは何故型が違うと判断されないのでしょうか?
このような記述(int型 + String型)の場合すべてString に
自動変換されるのがJava何でしょうか?
または、引数は型が定義してあっても実は型をチェックしていない物なのでしょうか?
あとで解説するとは、書籍になかったのでここで聞いてみたいと思います
よろしくお願いします
Stringオブジェクトが含まれる場合は全てStringに包括されます。
つまり、
String str = 9 + 9 + "; <---- 9と9はintだが最後の"でString型に補完。(99に
なる)
間違い…
99 ---> 18ね
あとSystemクラスのoutオブジェクトのprintメソッド群はStringに自動変換される。
int i= 99;
System.out.println(i); ---> 99
String str = 99;
System.out.println(str); ---> 99
あああさん、お返事ありがとうございます
式の中に””やStringがあることで自動補完してくれるんですね
この場合、受け取り側がintなどで定義していると、補完されているため
受け取れないとコンパイルエラーになるんですね
ありがとうございました、今後ともよろしくお願いします。