- ベストアンサー
JAVAの型変換(初心者)
プログラミングをはじめたばかりの初心者です。 JAVAについて教えて下さい。 型の変換についてなのですが、 例えばxxxをint型のyyyへの変換をするとき、 (1) int yyy = Integer.parseInt(xxx) (2) int yyy = (int) (xxx) という2つを習ったのですが、どうしてもこの2つの違いがわかりません・・・ この2つは同じものと考えてよいのでしょうか? もし違うのであれば、どんな違いがあるのでしょうか? (yyyの種類によって違う???) よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
参考サイト http://java.sun.com/javase/ja/6/docs/ja/index.html JDK 6 ドキュメント http://java.sun.com/javase/ja/6/docs/ja/api/index.html API リファレンス(javadoc) http://java.sun.com/javase/ja/6/docs/ja/api/java/lang/Integer.html クラス Integer キャスト演算子を使用したプリミティブ型のデータ変換は、 # (2) int yyy = (int) (xxx) # として型変換を行っている個所をキャストと言う。 データ型の表現範囲が広い物から、狭い物へ変換を行う場合に、 必要になります。 # 表現範囲が狭い物から、表現範囲の広い物への型変換は、キャストを行わなくても、 # 変換されます。
その他の回答 (2)
- mibusys
- ベストアンサー率60% (18/30)
文字列を数値にするときに(1)を使います。 例:String→int 他の数値型をintにする場合に(2)を使います。 例:long→int, float→int 簡単にいうとこんな感じです。
お礼
ありがとうございます! よくわかりました!
- Yanch
- ベストアンサー率50% (114/225)
違いとしては、 xxxの部分に書く事が出来る物の候補が違いますよ。 場合によって、使い分けましょう。
お礼
ありがとうございます! ごめんなさい。 誤:(yyyの種類によって違う???) 正:(xxxの種類によって違う???) でした・・・ ちなみに、このxxxの候補というあたりをもう少し詳しく教えていただけないでしょうか?(もしくはこの部分を説明しているサイトを教えていただけないでしょうか?)
お礼
ありがとうございます。 勉強になります。