入門中:型チェックの疑問 – プログラミング – Home

入門中:型チェックの疑問
 
通知
すべてクリア

[解決済] 入門中:型チェックの疑問


wood
 wood
(@wood)
ゲスト
結合: 21年前
投稿: 895
Topic starter  

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何でしょうか?
または、引数は型が定義してあっても実は型をチェックしていない物なのでしょうか?

あとで解説するとは、書籍になかったのでここで聞いてみたいと思います
よろしくお願いします


引用未解決
トピックタグ
あああ
 あああ
(@あああ)
ゲスト
結合: 16年前
投稿: 6
 

Stringオブジェクトが含まれる場合は全てStringに包括されます。
つまり、

String str = 9 + 9 + "; <---- 9と9はintだが最後の"でString型に補完。(99に
なる)


返信引用
あああ
 あああ
(@あああ)
ゲスト
結合: 16年前
投稿: 6
 

間違い…
99 ---> 18ね

あとSystemクラスのoutオブジェクトのprintメソッド群はStringに自動変換される。
int i= 99;
System.out.println(i); ---> 99

String str = 99;
System.out.println(str); ---> 99


返信引用
wood
 wood
(@wood)
ゲスト
結合: 21年前
投稿: 895
Topic starter  

あああさん、お返事ありがとうございます
式の中に””やStringがあることで自動補完してくれるんですね
この場合、受け取り側がintなどで定義していると、補完されているため
受け取れないとコンパイルエラーになるんですね

ありがとうございました、今後ともよろしくお願いします。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました