java.lang.Long.decode() 方法用于将 String 解码为 Long。接受由以下语法给出的十进制、十六进制和八进制数字:
DecodableString:
- Signopt DecimalNumeral
- 签名opt 0x HexDigits
- 签名opt 0X HexDigits
- 签名opt # 十六进制数字
- 签名opt 0 八进制数字
签名:
- +
- -
可选符号和/或基数说明符("0x"、"0X"、"#"或前导)后面的字符序列零)由具有指定基数(10、16 或 8)的 Long.parseLong 方法解析。该字符序列必须表示正值,否则将引发 NumberFormatException。如果指定字符串的第一个字符是减号,则结果取反。字符串中不允许有空格字符。
语法
public static Long decode(String nm)
throws NumberFormatException
参数
nm | 指定要解码的字符串。 |
返回值
返回一个 Long 对象,其中保存 nm 表示的 long 值。
异常
如果字符串不包含可解析的 long,则抛出 NumberFormatException。
示例:
在下面的示例中,java.lang.Long.decode() 方法用于将 String 解码为 Long。
import java.lang.*;
public class MyClass {
public static void main(String[] args) {
//创建一个保存长值的字符串
String x1 = "25"; //十进制数
String x2 = "0x6f"; //十六进制数
String x3 = "0X6B"; //十六进制数
String x4 = "-#6c"; //十六进制数
String x5 = "027"; //八进制数
//创建Long对象
Long y1 = Long.decode(x1);
Long y2 = Long.decode(x2);
Long y3 = Long.decode(x3);
Long y4 = Long.decode(x4);
Long y5 = Long.decode(x5);
//打印Long对象
System.out.println("The Long object y1 is: " + y1);
System.out.println("The Long object y2 is: " + y2);
System.out.println("The Long object y3 is: " + y3);
System.out.println("The Long object y4 is: " + y4);
System.out.println("The Long object y5 is: " + y5);
}
}
输出上面的代码将是:
The Long object y1 is: 25
The Long object y2 is: 111
The Long object y3 is: 107
The Long object y4 is: -108
The Long object y5 is: 23