«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему мой Java-код выдает ошибку «целочисленный литерал вне диапазона», хотя я использую длинную переменную?

Почему мой Java-код выдает ошибку «целочисленный литерал вне диапазона», хотя я использую длинную переменную?

Опубликовано 13 ноября 2024 г.
Просматривать:451

Why does my Java code throw an \

Понимание типов данных и обработки ошибок

В вашем коде вы объявили длинную переменную с именем testLong и попытались присвоить ей значение 9223372036854775807 Однако вы столкнулись с ошибкой, сообщающей, что литерал выходит за пределы диапазона для типа int.

Роль типов данных

Каждый тип данных в Java представляет собой разный диапазон значений. Тип данных long может содержать целочисленные значения от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807. Попытка получить значение попадает в этот диапазон.

Идентификация ошибки

Полученное сообщение об ошибке указывает на то, что компилятор интерпретирует литерал 9223372036854775807 как тип int, который имеет меньший диапазон значений. Такая интерпретация вызвана отсутствием буквы 'L' в конце литерала.

Исправление кода

Чтобы решить эту проблему, необходимо явно указать укажите, что литерал имеет тип long. Это можно сделать, добавив букву «L» в конец литерала, как показано ниже:

long testLong = 9223372036854775807L;

При такой модификации компилятор будет правильно интерпретируйте литерал как длинное значение и присвойте его переменной testLong.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3