Java 程序将字符串转换为 int

javaobject oriented programmingprogramming更新于 2024/8/6 17:53:00

要在 Java 中将字符串转换为 int,我们可以使用两个内置方法,即 parseInt() 和 valueOf()。这些静态方法属于 java.lang 包的 Integer 类,如果字符串不是整数的有效表示,则会抛出 NumberFormatException。在 Java 中,String 是"java.lang"包中的一个类,用于存储用双引号括起来的一系列字符。并且,整数是一种存储数值的原始数据类型。在本文中,我们将讨论几个 Java 程序,说明如何将给定的字符串转换为整数。

将字符串转换为 int 的 Java 程序

如前所述,我们将使用以下方法将字符串转换为整数 -

  • Integer.parseInt()

  • Integer.valueOf()

让我们借助示例程序逐一讨论这些方法。

使用 Integer.parseInt()

Integer.parseInt() 方法将字符串作为参数并将其解析为原始整数值。

语法

Integer.parseInt(String val);

示例 

以下 Java 程序演示如何使用 parseInt() 方法将字符串转换为 int。

方法

  • 初始化将转换为整数的字符串。

  • 接下来,使用 getClass() 和 getSimpleName() 方法检查并打印定义字符串的类型。

  • 现在,使用 parseInt() 方法将字符串转换为整数,并将结果存储在整数变量中。

  • 最后,检查并打印数据类型以确认字符串是否转换为整数。

public class Example1 {
   public static void main( String args[] ) {
    // 初始化字符串
    String inputString = "99999";
    // 检查字符串的数据类型
    System.out.print("输入字符串的类型: ");
    System.out.println(inputString.getClass().getSimpleName());
    // 将字符串转换为整数
    int newVal = Integer.parseInt(inputString);
    // 打印结果
    System.out.println("转换为整数后的给定字符串: " + newVal);
    // 检查整数的数据类型
    System.out.print("转换为整数后的给定字符串的类型: ");
    System.out.println(((Object)newVal).getClass().getSimpleName());
   }
}

输出

输入字符串的类型:字符串
转换为整数后的给定字符串:99999
转换为整数后的给定字符串的类型:整数

使用 Integer.valueOf()

Integer.valueOf() 方法可以将字符串、字符或整数作为参数,但返回一个包含解析整数值的整数对象。

语法

Integer.valueOf(String val);

示例 1

这是另一个 Java 程序,它将展示如何借助 Integer.valueOf() 方法将字符串转换为整数。

public class Example2 {
   public static void main( String args[] ) {
        // 初始化字符串
        String inputString = "30072023";
        // 检查字符串的数据类型
        System.out.print("输入字符串的类型: ");
        System.out.println(inputString.getClass().getSimpleName());
        // 将字符串转换为整数
        int newVal = Integer.valueOf(inputString);
        // 打印结果
        System.out.println("转换为整数后的给定字符串: " + newVal);
        // 检查整数的数据类型
        System.out.print("转换为整数后的给定字符串的类型: ");
        System.out.println(((Object)newVal).getClass().getSimpleName());
   }
}

输出

输入字符串的类型:字符串
转换为整数后的给定字符串:30072023
转换为整数后的给定字符串的类型:整数

示例 2

之前我们提到,如果传递的字符串不是整数的有效表示,parseInt() 和 valueOf() 方法将抛出 NumberFormatException。在此 Java 程序中,我们将传递一个包含字母字符而不是数字字符的字符串来显示异常。

public class Example3 {
   public static void main( String args[] ) {
        // 初始化字符串
        String inputString = "TutorialsPoint";
        // 将字符串转换为整数
        int newVal = Integer.valueOf(inputString); // 将引发异常
        // 打印结果
        System.out.println("给定的字符串转换为整数后: " + newVal);
   }
}

输出

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:665)
at java.base/java.lang.Integer.valueOf(Integer.java:992)
at Example3.main(Example3.java:6)

结论

Integer.parseInt() 和 Integer.valueOf() 都是将字符串转换为整数的非常有用的方法。但是,Integer.valueOf() 方法的性能明显快于 Integer.parseInt() 方法。我们讨论了三个 Java 程序来说明这些方法的实际实现。


相关文章