Java.lang.Integer 类

java.lang.Integer.parseInt() 方法用于将字符串参数解析为基数中的有符号整数由第二个参数指定。字符串中的字符必须全部是指定基数的数字(由Character.digit(char, int)是否返回非负值决定),除了第一个字符可以是ASCII减号"-"("\u002D" ') 表示负值,或 ASCII 加号 '+' ('\u002B') 表示正值。返回结果整数值。

如果发生以下任何情况,则会抛出 NumberFormatException 类型的异常:

  • 第一个参数是null 或长度为零的字符串。
  • 基数要么小于Character.MIN_RADIX,要么大于Character.MAX_RADIX。
  • 字符串中的任何字符都不是指定的基数,但第一个字符可以是减号"-"("\u002D") 或加号"+"("\u002B"),前提是字符串长度超过 1。
  • 字符串表示的值不是int类型的值。

语法

public static int parseInt(String s,
                           int radix)
                    throws NumberFormatException

参数

s 指定包含要解析的整数表示的字符串。
radix 指定解析 s 时使用的基数。

返回值

返回字符串参数表示的整数在指定的基数中。

异常

如果字符串不包含可解析的 int,则抛出 NumberFormatException

示例:

在下面的示例中,java.lang.Integer.parseInt() 方法用于将字符串参数解析为指定基数的有符号整数。

import java.lang.*;

public class MyClass {
  public static void main(String[] args) {
    
    //创建一个保存整数值的字符串
    String x = "100";
    String y = "6F";

    //使用基数为2(二进制)创建int值
    int p = Integer.parseInt(x, 2);

    //使用基数16(十六进制)创建int值
    int q = Integer.parseInt(y, 16);

    //打印字符串
    System.out.println("The string x is: " + x); 
    System.out.println("The string y is: " + y); 

    //打印int值
    System.out.println("The int value p is: " + p);   
    System.out.println("The int value q is: " + q);    
  }
}

上述代码的输出将是:

The string x is: 100
The string y is: 6F
The int value p is: 4
The int value q is: 111