把一个String类型转换成int类型有以下几种方式:
Integer.valueOf("123");
Integer.parseInt("123");
Integer in = new Integer("123");
那么他们的区别是什么呢,可以看看各自的源码如下:
//Integer.valueOf("123");
public static Integer valueOf(String s) throws NumberFormatException {
return Integer.valueOf(parseInt(s, 10));
}
//Integer.parseInt("123");
public static int parseInt(String s) throws NumberFormatException {
return parseInt(s,10);
}
//Integer in = new Integer("123");
public Integer(String s) throws NumberFormatException {
this.value = parseInt(s, 10);
}
从上面可以看出,三个方法最终调用的都是parseInt(s, 10)方法,即返回s的十进制数
我们也可以将一个二进制数转换为十进制数 :Integer.parseInt(“111010”, 2),如果Integer.parseInt(“111010”)默认就是调用parseInt(s, 10)
Integer.valueOf()与Integer.parseInt()的区别是前者返回Integer对象,后者返回的是int类型
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/19181.html