【Java】Integer.parseInt()和Integer.valueOf()的区别
1.Integer.parseInt()和Integer.valueOf()的区别
区别1
Integer.parseInt()将字符串转换为基本类型int,返回一个int类型值。
int i = Integer.parseInt(String s);
Integer.valueOf()将字符串转换为Integer对象,返回一个Integer对象。
Integer i = Integer.valueOf(String s);
区别2
parseInt方法是静态方法,而valueOf方法是静态工厂方法。
区别3
Integer.valueOf()使用了Integer缓存,可以缓存-128到127之间的整数。
Integer.parseInt()不使用缓存,每次都会返回一个新的int类型值。
区别4
Integer.parseInt()在转换过程中发生错误时,会抛出NumberFormatException异常。
Integer.valueOf()在转换过程中发生错误时,也会抛出NumberFormatException异常,但如果要转换的字符串为null,它将返回null而不是抛出异常。
Integer.valueOf()在转换过程中发生错误时,也会抛出NumberFormatException异常,但如果要转换的字符串为null,它将返回null而不是抛出异常。
区别5
valueOf方法可以接受一个字符串和一个int类型的参数,将字符串转换为指定进制的整数,例如:Integer.valueOf("10", 2)可以将二进制数"10"转换为十进制数2。
两种方式根据需要选择使用即可
2.常用的类型转换
2.1 转换为double类型
Double.valueOf()
Double.parseDouble()
2.2 转换为string类型
String.valueOf()
2.3 转换为float类型
Float.valueOf()
Float.parseFloat()
2.4 转换为char
Character.valueOf()
2.5转换为long类型
Long.valueOf()
Long.parseLong()
2.6 转换为short类型
Short.valueOf()
Short.parseShort()
2.7转换为byte类型
Byte.valueOf()
Byte.parseByte()
2.8转换为boolean类型
Boolean.valueOf()
Boolean.parseBoolean()

浙公网安备 33010602011771号