java - 为什么 Long.parseLong(String s) 不会将尾随 "L"视为有效?

标签 java long-integer

Long myLong = Long.parseLong("1L") // Throws NumberFormatException

我最好的猜测是,这样的额外检查会导致开销,只有 ~1%(或更少)的时间有人调用带有尾随“L”字符的 parseLong .

但是这个“遗漏”背后可能有不同的原因吗?

最佳答案

在方法java.lang.Long.parseLong(String)中是这样定义的:

The characters in the string must all be decimal digits, except that the first character may be an ASCII minus sign ...

关于java - 为什么 Long.parseLong(String s) 不会将尾随 "L"视为有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36739676/

相关文章:

go - Go 中有 uint64 字面量吗?

java - Windows Server 2003 上的奇怪 Java Swing UI NullPointerException

Java 表单框架

c++ - 长12位数字?

java - Long.parseLong(String s) 和 new Long(String s) 的区别?

objective-c - 为什么在 C 中将大 double 转换为 long 有时会返回正值而有时会返回负值?

java - 使用java应用程序在linux中打开端口

java - 如何反转链表 - 详细说明

java - 套接字——来自 python 和 java 的不同字节

java - 如何将 2 个长值格式化为百分比格式?