Tah*_*idi 3 java hex long-integer
在测试中,我看到Long.decode类似于Long.parseLong简单数字格式字符串的工作(我的意思是字符串没有'0x',......).
System.out.println(Long.decode("123") + Long.decode("123")); // prints 246
System.out.println(Long.parseLong("123") + Long.parseLong("123")); // same as above
Run Code Online (Sandbox Code Playgroud)
我可以用Long.decode而不是在Long.parseLong任何地方吗?如果不是为什么?
它们将以相似的方式行动,但Long.parseLong返回原语,long同时Long.decode返回一个新Long对象,这需要更多的时间和资源.因此,最好Long.parseLong用于简单的情况.但是,Long.decode提供了更大的灵活性,因为它允许您解码十六进制(例如0xFFFF)或八进制(例如010 == 8)的输入.
如果您的数字可能以 0 开头并且您不希望它是八进制,则不能使用 decode()。
例如
Integer.decode("010") == 8 // octal
Integer.parseInt("010") == 10 // always decimal
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3891 次 |
| 最近记录: |