Думая о прецеденте использования Long.parseLong("1L");
. У вас есть длинная цена в виде String
с номером l
.
Теперь, как вы можете получить это значение в реальных приложениях, рассмотреть графическое или консольное приложение, преобразование номера String
в фактический тип не будет иметь суффикса l
или d
. От входа пользователя в базу данных суффикс l
неприемлем для ввода номера. Вы никогда не получите значение String
как 1L
из бизнес-логики для преобразования в фактическое значение Long
.
Удивительно, но с другой стороны Double myDouble = Double.parseDouble("1d");
будет работать нормально, потому что sun.misc.FloatingDecimal
удалось разобрать с суффиксом d
в количестве, потому что double
значение может содержать другие символы, такие как E
или e
в нем для экспоненциального члена.
Вы помещаете L для идентификации длинного кода, это по существу не имеет смысла. Это то же самое, что и любая другая буква или символ. Просто удалите его. –
Но разве это не было бы полезно для случаев, когда код должен анализировать код? –
Вы уже объясняете, что имеете дело с «длинным». Дополнительный 'L' требуется для числовых литров, потому что, если он отсутствует, число implicity представляет собой' int' (или 'double' для чисел с плавающей запятой), а не' long'. – SomeJavaGuy