- ベストアンサー
byteについて
public static void hoge(byte b) { } public static void main (String args[]) { hoge(1); } とするとエラーになります。 でも、 public static void hoge(byte b) { } public static void main (String args[]) { byte b=1; hoge(b); } にするとエラーになりません。 なぜなんでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (4)
noname#49664
回答No.4
- kamkamkam3
- ベストアンサー率42% (216/514)
回答No.3
- kamkamkam3
- ベストアンサー率42% (216/514)
回答No.2
- fortranxp
- ベストアンサー率26% (181/684)
回答No.1
お礼
ありがとうございます。 それは分かるんですが、 変数で宣言した場合は、byteとして認識してるのに、 なぜメソッドに直接指定したときは認識してくれないのでしょう? もちろん、キャストすればできます。 hoge( (byte)1 ); キャスト以外に、byteとして認識させる方法があるのでしょうか? longでLをつけるみたいに。