のは、私は、この変数を宣言するとしましょう:誰かがL(長い)がそこになければならない理由を私に説明できますか?
私は数が整数のために大に明らかであるので、私は、エラーを取得することを行う場合long k = 1060606060000;
。コンパイラが長い変数であることを認識するために、最後にLを追加する必要があるのはなぜですか?私は明らかに、私は長いタイプのものにはkが必要だと言っていましたが。
のは、私は、この変数を宣言するとしましょう:誰かがL(長い)がそこになければならない理由を私に説明できますか?
私は数が整数のために大に明らかであるので、私は、エラーを取得することを行う場合long k = 1060606060000;
。コンパイラが長い変数であることを認識するために、最後にLを追加する必要があるのはなぜですか?私は明らかに、私は長いタイプのものにはkが必要だと言っていましたが。
リテラル値は常にint
と解釈されるため、l
またはL
が付加されていないと解釈されます。
l
が指定されていない場合は、long
の変数にリテラルint
を割り当てます。
コンパイル時に、コンパイラはリテラル値を最初にチェックし、l
またはL
が付加されていない場合は、int
と解釈します。
ここで、数値がInteger.MAX_VALUE
より大きい場合、コンパイラはエラーを表示します。
Lを追加すると、コンパイラに "hey btwはロングタイプです..."と伝えられます。 –
なぜ、最初は長く追加するのは難しいですか? – Geddi
@Geddi 'int'に収まるのに"明らかに "長すぎないような数字があった場合、' 0'のように、長いリテラルであることをどのように指定しますか?そして、長いリテラルを指定するには2つの方法があります。 –