在 Java 中,把 String 转成数字 通常有以下几种常见方式,取决于你要转成什么类型(int、long、double 等)。
Integer.parseIntString s = "123";
int num = Integer.parseInt(s);
Integer.valueOf(返回 Integer 对象)String s = "123";
int num = Integer.valueOf(s);
⚠️ 如果字符串不是数字会抛异常:
NumberFormatException
String s = "123456";
long num = Long.parseLong(s);
String s = "3.14";
double d = Double.parseDouble(s);
float f = Float.parseFloat(s);
避免异常崩溃,可以先判断或捕获异常:
String s = "abc";
try {
int num = Integer.parseInt(s);
} catch (NumberFormatException e) {
System.out.println("不是合法数字");
}
if (str.matches("\\d+")) {
int num = Integer.parseInt(str);
}
Integer.parseInt("12.3"); // ❌ 错误,不是 int
Integer.parseInt(""); // ❌ 空字符串
Integer.parseInt(null); // ❌ NullPointerException
| 目标类型 | 方法 |
|---|---|
| int | Integer.parseInt(s) |
| long | Long.parseLong(s) |
| double | Double.parseDouble(s) |
| float | Float.parseFloat(s) |
如果你有具体场景(比如从用户输入、JSON、文件读取),可以告诉我,我给你更合适的写法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。