Java中的int与String互相转换方式

ゞ 浴缸里的玫瑰 2021-09-23 00:16 455阅读 0赞

一、String转int有两种方式

(1)Integer.parseInt(str)

(2)Integer.valueOf(str).intValue()

代码如下·:

  1. String str= "123";
  2. int n=0;
  3. //(1)Integer.parseInt(str)
  4. for(int i=0; i<100000; i++){
  5. n = Integer.parseInt(str);
  6. }
  7. System.out.println("Integer.parseInt(str) : " + n);
  8. System.out.println();
  9. //(2)Integer.valueOf(str).intValue()
  10. n=0;
  11. for(int i=0; i<100000; i++){
  12. n = Integer.valueOf(str).intValue();
  13. }
  14. System.out.println("Integer.parseInt(str) : " + n);

运行结果
在这里插入图片描述

二、int转String有三种方式

(1)num + “”

(2)String.valueOf(num)

(3)Integer.toString(num)

代码如下:

  1. int num=10;
  2. for(int i=0;i<5;i++) {
  3. String str=num+"";
  4. num++;
  5. System.out.println("str1:"+str);
  6. }
  7. System.out.println();
  8. num=10;
  9. for(int i=0;i<5;i++) {
  10. String str2 = String.valueOf(num);
  11. num++;
  12. System.out.println("str2:"+str2);
  13. }
  14. System.out.println();
  15. num=10;
  16. for(int i=0;i<5;i++) {
  17. String str3 = Integer.toString(num);
  18. num++;
  19. System.out.println("str3:"+str3);
  20. }

在这里插入图片描述
使用第一种方法相对第二第三种耗时比较大

String.valueOf():采用String.valueOf(object)的基础是Object#toString(),但这里不用担心object是否为null这一问题,JDK中String#valueOf(object)源码:

  1. public static String valueOf(Object obj){return (obj==null)?"null":obj.toString();}

所以使用该方法不必担心object为null的情况,但同时注意当object为null时该方法返回”null”,而非null!!!

**Integer.toString();**采用Integer.toString()的基础仍是Object#toString(),因为java.lang.Object类中已有public方法toString(),所以对任何严格意义上的Java对象都可以调用此方法,但使用时需要注意,必须保证object不是null值,否则将会抛出NullPointerException异常!!!

发表评论

表情:
评论列表 (有 0 条评论,455人围观)

还没有评论,来说两句吧...

相关阅读