如何在 Java 中把一个字符串转换为一个整型 int
Mohammad Irfan
2023年10月12日
Java
Java String
Java Integer
-
在 Java 中使用
parseInt()将字符串String转换为整型int -
在 Java 中使用
Apache将String转换为int -
使用 Java 中的
decode()将String转换为int -
使用 Java 中的 valueOf()
将String 转换为int -
在 Java 中使用
parseUnsignedInt()将String转换为int -
在 Java 中使用
replaceAll()删除非数字字符后转换字符串
本教程介绍了如何在 Java 中把一个字符串 String 转换成一个整型 int,并列举了一些示例代码来理解它。
在 Java 中使用 parseInt() 将字符串 String 转换为整型 int
String 和 int 都是 Java 中的数据类型。String 用于存储文本信息,而 int 用于存储数字数据。
在这里,我们使用 Integer 类的 parseInt() 方法,返回一个 Integer。由于 Java 做了隐式自动装箱,那么我们可以将其存储成 int 基元类型。请看下面的例子。
public class SimpleTesting {
public static void main(String[] args) {
String str = "1234";
int int_val = Integer.parseInt(str);
System.out.println(int_val);
}
}
输出:
1234
在 Java 中使用 Apache 将 String 转换为 int
如果你正在使用 Apache 库,你可以使用 NumberUtils 类的 toInt() 方法返回一个 int 值。如果传递的字符串中包含任何非数字字符,这个方法不会抛出任何异常,而是返回 0。使用 toInt() 比使用 parseInt() 是安全的,因为 parseInt() 会抛出 NumberFormatException。请看下面的例子。
import org.apache.commons.lang3.math.NumberUtils;
public class SimpleTesting {
public static void main(String[] args) {
String str = "1234";
int int_val = NumberUtils.toInt(str);
System.out.println(int_val);
str = "1234x"; // non-numeric string
int_val = NumberUtils.toInt(str);
System.out.println(int_val);
}
}
输出:
1234
0
使用 Java 中的 decode() 将 String 转换为 int
我们可以使用 Integer 类的 decode() 方法从一个字符串中获取 int 值。它返回 Integer 值,但如果你想得到 int(基本)值,则使用 intValue() 和 decode() 方法。请看下面的例子。
public class SimpleTesting {
public static void main(String[] args) {
String str = "1424";
int int_val = Integer.decode(str);
System.out.println(int_val);
// int primitive
int_val = Integer.decode(str).intValue();
System.out.println(int_val);
}
}
输出:
1424
使用 Java 中的 valueOf()将String 转换为 int
我们可以使用 valueOf() 方法来获取一个字符串转换后的 int 值。
public class SimpleTesting {
public static void main(String[] args) {
String str = "1424";
int int_val = Integer.valueOf(str);
System.out.println(int_val);
}
}
1424 1424
在 Java 中使用 parseUnsignedInt() 将 String 转换为 int
如果我们要转换一个不包含符号的字符串,使用 parseUnsignedInt() 方法来获取 int 值。它对无符号字符串的值工作正常,如果值是有符号的,则会抛出一个异常。
public class SimpleTesting {
public static void main(String[] args) {
String str = "1424";
int int_val = Integer.parseUnsignedInt(str);
System.out.println(int_val);
}
}
输出:
1424
在 Java 中使用 replaceAll() 删除非数字字符后转换字符串
如果字符串中包含非数字字符,则使用 String 类的 replaceAll() 方法与 regex 删除所有非数字字符,然后使用 Integer 类的 parseInt() 方法得到其等价的整数值。请看下面的例子。
public class SimpleTesting {
public static void main(String[] args) {
String str = "1424x";
str = str.replaceAll("[^\\d]", "");
int int_val = Integer.parseInt(str);
System.out.println(int_val);
}
}
输出:
1424
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe
相关文章 - Java String
- 如何从 Java 中的字符串中删除子字符串
- 如何将 Java 字符串转换为字节
- 如何在 Java 中以十六进制字符串转换字节数组
- 如何在 Java 中执行字符串到字符串数组的转换
- 用 Java 生成随机字符串
- Java 中的交换方法