プロが教えるわが家の防犯対策術!

最近javaを始めた者です。
javaの初歩的なプログラミングなのですが、long型の変数を定義して例えば10個の数字1234567890をその変数に代入してやるとエラーなくコンパイルされるのですが、
11個以上の数字、例えば12345678900を代入してコンパイルしようとすると質問タイトルのようなエラーメッセージが表示されてしまいます。
long型の変数を使えば11個の数字なら問題なく代入できると理解しているのですが、これは間違っているのでしょうか。
エラーがでる理由がわからなくて困っています。このエラーについて、また、どのようにすれば11個以上の数字が代入できるのか教えてください。お願いします。

A 回答 (3件)

12345678900Lのように最後にLを付けてリテラルがlongであることを明示しましょう。


数字だけ並べたリテラルはint型です。従ってint型に入らないような大きなリテラルは数字だけ並べたのでは表現できません。
    • good
    • 0
この回答へのお礼

ありがとうございました。おかげさまでできました。

お礼日時:2006/01/18 14:47

12345678900L


のようにする必要があります
    • good
    • 1
この回答へのお礼

ありがとうございました。できました。

お礼日時:2006/01/18 14:48

どこかでそれをintにしようとしたりしてるんじゃね?


longの範囲は-9223372036854775808 ~ 9223372036854775807 よねぇ。
    • good
    • 0
この回答へのお礼

ありがとうざいました。No2の方とNo3の方の通りやったらできました。

お礼日時:2006/01/18 14:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!