LoginSignup
18
7

More than 5 years have passed since last update.

Javaのlong型へ入れる数値にLをつける理由

Last updated at Posted at 2017-04-30

初めに

後輩から、「新卒の方からこういう質問をされたのですが、
そういえばなんでですか」という質問をされたので、
自分で調べなといいつつ自分でも調べてみたのでまとめました。

答え

Javaでは数値を扱う際には、デフォルトでint型となっているため、
long型として扱うには明示的にlongであることを示す必要があるから
(数値リテラルの整数の値はint型として扱う)

追記

予想通りでした。
ただこれだけだとあれなので、ほかに気になったことを追記します。

他の整数型は?

byteやshortに関しては、数値のみでOK
ただし範囲を超えたら当然のごとくコンパイルエラー

byteはわかるが、shortにsがつかない理由は謎
(short自体あまり見ないが。。。)

小数型のデフォルトは?

小数型のデフォルトはdouble型となっている。

小数型の語尾は?

float型を扱う際には明示的にFをつける必要がある。

double型を扱う際にはDをつけることができる(つけなくてもいいし、見たことはない)

他の言語は

Scala

javaと同じ

Python

2.5まではJavaのようにlong型の場合にはlかLをつける必要があったが、
以降は、統合され必要はなくなった模様

C

符号あり整数のlong型を扱う際にはlもしくはLをつける
符号なし整数のlong型を扱う際にはulもしくはULをつける

C++

符号あり整数のlong型を扱う際にはllもしくはLLをつける
符号なし整数のlong型を扱う際にはullもしくはULLをつける

C

符号あり整数のlong型を扱う際にはlもしくはLをつける
符号なし整数のlong型を扱う際にはulもしくはULをつける

18
7
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
7