您的位置:首页 > 编程语言 > Java开发

[置顶] java中类型转换(String float int)

2016-10-13 23:07 423 查看
这几种类型装换,一般都会用到parseInt()、parseFloat() 、valueof()方法,但是这是有区别的。

看看他们的返回类型不同

static int parseInt(String s)

将字符串参数作为有符号的十进制整数进行分析。

static Integer valueOf(int i)

返回一个表示指定的 int 值的 Integer 实例。

static Integer valueOf(String s)

返回保持指定的 String 的值的 Integer 对象。

String —>int

需要使用 Integer 类中的 parseInt() 方法或者 valueOf() 方法进行转换.

举个例子:

String str = "123";
try {
int a = Integer.parseInt(str);
} catch (NumberFormatException e) {
e.printStackTrace();
}


String str = "123";
try {
int b = Integer.valueOf(str).intValue()
//int b = Integer.valueOf(str)
//这样也可以
} catch (NumberFormatException e) {
e.printStackTrace();
}


为什么要try-catch呢!!!

因为在转换过程中需要注意,因为字符串中可能会出现非数字的情况,所以在转换的时候需要捕捉处理异常或者throw这个异常

int—>String

int i=12345;
第一种方法:String s=i+"";
第二种方法:String s=String.valueOf(i);
第三种方法:String s=Integer.toString(i);


解释下:

从返回值可以看出他们的区别 parseInt()返回的是基本类型int 而valueOf()返回的是包装类Integer

Integer是可以使用对象方法的 而int类型就不能和Object类型进行互相转换

Integer.parseInt(China)返回值是int型的. 但是会报异常,因为参数是非数值的

Integer.valueOf(chuan)返回值是Integer型的.把Integer赋值给int型的话,JRE会自己完成这些工作

String和float的相互转换类似。

参考链接

.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: