- Java.lang 包类
- Java.lang - 首页
- Java.lang - Boolean
- Java.lang - Byte
- Java.lang - Character
- Java.lang - Character.Subset
- Java.lang - Character.UnicodeBlock
- Java.lang - Class
- Java.lang - ClassLoader
- Java.lang - Compiler
- Java.lang - Double
- Java.lang - Enum
- Java.lang - Float
- Java.lang - InheritableThreadLocal
- Java.lang - Integer
- Java.lang - Long
- Java.lang - Math
- Java.lang - Number
- Java.lang - Object
- Java.lang - Package
- Java.lang - Process
- Java.lang - ProcessBuilder
- Java.lang - Runtime
- Java.lang - RuntimePermission
- Java.lang - SecurityManager
- Java.lang - Short
- Java.lang - StackTraceElement
- Java.lang - StrictMath
- Java.lang - String
- Java.lang - StringBuffer
- Java.lang - StringBuilder
- Java.lang - System
- Java.lang - Thread
- Java.lang - ThreadGroup
- Java.lang - ThreadLocal
- Java.lang - Throwable
- Java.lang - Void
- Java.lang 包附加内容
- Java.lang - 接口
- Java.lang - 错误
- Java.lang - 异常
- Java.lang 包有用资源
- Java.lang - 有用资源
- Java.lang - 讨论
Java - Short decode() 方法
Java Short decode() 方法将字符串转换为短整型。它接受十进制、十六进制和八进制数字,遵循以下语法:
可解码字符串 -
Signopt DecimalNumeral
Signopt 0x HexDigits
Signopt 0x HexDigits
Signopt # HexDigits
Signopt 0 OctalDigits
Short.parseShort 方法根据指定的基数 (10、16 或 8) 解析可选符号和/或基数说明符 ("0x"、"0X"、"#" 或前导零) 后的字符序列。除非此字符串表示正值,否则将引发 NumberFormatException。如果负号出现在提供的字符串的第一个字符中,则结果将被取反。字符串不能包含任何空格字符。
语法
以下是Java Short decode() 方法的语法:
public static Short decode(String nm) throws NumberFormatException
参数
nm - 这是要解码的字符串。
返回值
此方法返回一个 Short 对象,其中包含 nm 表示的短整型值。
解码包含正短整型值的字符串示例
当将正整数作为参数传递给此方法时,它将返回相同的值。
以下是一个示例,通过将正整数作为字符串参数传递给创建的变量 'x' 来将字符串值解码为短整型:
package com.tutorialspoint; public class ShortDemo { public static void main(String[] args) { String x = "87"; Short decode = Short.decode(x); System.out.println("String value decoded to short is: = " + decode); } }
输出
让我们编译并运行上面的程序,这将产生以下结果:
String value decoded to short is: = 87
解码包含正短整型八进制值的字符串示例
当我们将八进制数作为参数传递给此方法时,它将返回等效的解码字符串值到短整型。
在下面的示例中,创建了字符串变量 'x'。然后将八进制值赋给此变量。之后,通过传递字符串参数中的八进制数将其解码为短整型:
package com.tutorialspoint; public class ShortDemo { public static void main(String[] args) { String x = "072"; Short decode = Short.decode(x); System.out.println("decoded String value in to Short = " + decode); } }
输出
以下是上述代码的输出:
decoded String value in to Short = 58
解码包含正短整型十六进制值的字符串示例
如果我们将十六进制数作为参数传递,则此方法将返回等效的解码字符串值到短整型。
以下是一个示例,其中创建了一个字符串变量 'x'。将十六进制数赋给该变量。然后,为了将字符串值解码为短整型,将十六进制数作为字符串参数传递:
package com.tutorialspoint; public class ShortDemo { public static void main(String[] args) { String x = "0x6f"; Short decode = Short.decode(x); System.out.println("decoded String value in to Short = " + decode); } }
输出
执行上述程序后,输出如下:
decoded String value in to Short = 111
解码包含无效值的字符串时遇到异常示例
当我们使用此方法传递字符串作为参数时,它将返回 NumberFormatException。
在下面的示例中,赋给字符串变量 'x' 的值 "TutorialsPoint" 不包含可解析的短整型值。因此,它会抛出 NumberFormatException:
package com.tutorialspoint; public class ShortDemo { public static void main(String[] args) { String x = "TutorialsPoint"; Short decode = Short.decode(x); System.out.println("decoded String value in to Short = " + decode); } }
NumberFormatException
执行上述代码时,我们得到以下输出:
Exception in thread "main" java.lang.NumberFormatException: For input string: "TutorialsPoint" at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67) at java.base/java.lang.Integer.parseInt(Integer.java:668) at java.base/java.lang.Integer.decode(Integer.java:1454) at java.base/java.lang.Short.decode(Short.java:326) at com.tutorialspoint.ShortDemo.main(ShortDemo.java:4)