ホームページ >Java >&#&チュートリアル >Long 変数を使用しているにもかかわらず、Java コードで「整数リテラルが範囲外です」エラーがスローされるのはなぜですか?
データ型とエラー処理について
コード内で、testLong という名前の long 変数を宣言し、それに値 9223372036854775807 を割り当てようとしました。ただし、リテラルが int 型の範囲外であることを示すエラーが発生しました。
データ型の役割
Java の各データ型は、値の範囲が異なります。 long データ型は、-9,223,372,036,854,775,808 から 9,223,372,036,854,775,807 までの整数値を保持できます。試行した値はこの範囲内にあります。
エラーの特定
受け取ったエラー メッセージは、コンパイラがリテラル 9223372036854775807 を int 型として解釈していることを示しています。値の範囲が小さくなります。この解釈は、リテラルの末尾に文字 'L' がないことが原因です。
コードの修正
この問題を解決するには、明示的に次のことを行う必要があります。リテラルがlong型であることを指定します。これは、以下に示すように、リテラルの末尾に文字「L」を追加することで実行できます。
<code class="java">long testLong = 9223372036854775807L;</code>
この変更により、コンパイラーはリテラルを Long 値として正しく解釈し、それをtestLong 変数。
以上がLong 変数を使用しているにもかかわらず、Java コードで「整数リテラルが範囲外です」エラーがスローされるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。