java中类型转换(String float int)

这几种类型装换,一般都会用到parseInt()、parseFloat() 、valueof()方法,但是这是有区别的。

看看他们的返回类型不同

  1. static int parseInt(String s)
    将字符串参数作为有符号的十进制整数进行分析。
  2. static Integer valueOf(int i)
    返回一个表示指定的 int 值的 Integer 实例。
  3. 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的相互转换类似。

参考链接
.

发布了175 篇原创文章 · 获赞 76 · 访问量 23万+

猜你喜欢

转载自blog.csdn.net/qq_29232943/article/details/52811176