`
sdylag
  • 浏览: 75582 次
  • 性别: Icon_minigender_1
  • 来自: 云南
社区版块
存档分类
最新评论

JAVA中int转String类型效率比较(含Integer.toString(int i) vs String.valueOf(int i) )

阅读更多

JAVA 中int类型转String类型的通常方法,有三种:

 

 1、String.valueOf(int i)

 2、Integer.toString(int i)

 3、i+"";     //i 为 int类型

 

三种方法效率排序为:

Integer.toString(int i)   >   String.valueOf(int i)   >  i+"";    

代码测试:

public static void main(String[] args) { 
      int[] intArr = new int[1000000];
      String[] strArr1 = new String[1000000];//为了公平分别定义三个数组

      String[] strArr2 = new String[1000000];
      String[] strArr3 = new String[1000000];
      //赋值
      Long t1 = System.currentTimeMillis();
      for(int i=0;i<1000000;i++){
       intArr[i]=i+1;
      }
      Long t2 = System.currentTimeMillis();
      for(int i=0;i<1000000;i++){
        strArr1[i] = String.valueOf(intArr[i]); 
      }
      Long t3 = System.currentTimeMillis();
      for(int i=0;i<1000000;i++){
       strArr2[i] = Integer.toString(intArr[i]);
      }
      Long t4 = System.currentTimeMillis();
      for(int i=0;i<1000000;i++){
       strArr3[i] = intArr[i]+"";
      }
      Long t5 = System.currentTimeMillis();
      System.out.println("t1 = "+t1);
      System.out.println("t2 = "+t2);
      System.out.println("t3 = "+t3);
      System.out.println("t4 = "+t4);
      System.out.println("t5 = "+t5);
      System.out.println("赋值:"+(t2-t1));
      System.out.println("String.valueOf(i):"+(t3-t2));
      System.out.println("Integer.toString(i):"+(t4-t3));
      System.out.println("i+\"\":"+(t5-t4));
}

 

 

 

我的测试结果为:

t1 = 1298798872078
t2 = 1298798872093
t3 = 1298798872656
t4 = 1298798873000
t5 = 1298798873671
赋值:15
String.valueOf(i):563
Integer.toString(i):344
i+"":671

分享到:
评论
2 楼 爆炒清汤 2014-06-13  
楼主你敢不敢把你的赋值操作给去掉:


strArr1[i] = String.valueOf(intArr[i]); ==》String.valueOf(intArr[i]);
strArr2[i] = Integer.toString(intArr[i]);==》Integer.toString(intArr[i]);
1 楼 Lyfing 2012-05-20  
Thanks!

相关推荐

    java中String类型转换方法.pdf

    int i = Integer.valueOf(str).intValue();` 字符串到浮点型 将字符串转换为浮点型可以使用以下方法: * 使用 `Double.parseDouble()` 方法:`String str = "3.14"; double d = Double.parseDouble(str);` * ...

    java中int_char_string三种类型的相互转换

    Java 中 int、char、String 三种类型的相互转换详解 Java 作为一种静态类型语言,对变量的类型定义非常严格。然而,在实际开发中,我们经常需要在不同的类型之间进行转换以满足不同的需求。其中,int、char、String...

    java中string和int型的相互转换.doc

    `String.valueOf()` 方法和 `Integer.toString()` 方法都可以将 int 类型转换为 String 类型,而字符串连接操作符可以将 int 类型转换为 String 类型,并且可以在字符串中插入其他字符。 在实际开发中,我们通常...

    String与int相互转换

    这篇博文主要探讨的是如何在Java编程语言中进行String和int之间的转换,这对于理解Java的数据类型转换以及处理日常开发工作至关重要。 1. String转int: 在Java中,将字符串转换为整型主要有三种方法: a) 使用...

    JAVA数据类型转换

    例如,`stringToInt`方法使用`Integer.valueOf()`将字符串转换为`Integer`对象,然后通过`intValue()`得到`int`值。其他方法如`stringToFloat`和`floatToString`遵循相同的概念。 总的来说,理解并正确使用Java中的...

    JavaString类型转换[文].pdf

    例如,`String s = String.valueOf(i)`或`String s = Integer.toString(i)`。对于`Double`, `Float`, `Long`等类型,转换方法类似。 3. 十进制与其他进制的转换 Java的`Integer`和`Long`类提供了转换为二进制、...

    java类型转换参考大全

    int i = Integer.valueOf(str).intValue(); ``` - **使用`Integer.parseInt()`**:将字符串转换为整型。 ```java int i = Integer.parseInt(str); ``` ##### 4. 字符串到浮点型 - **使用`Double.valueOf()....

    java 类型转换 大全

    int i = Integer.valueOf(my_str).intValue(); ``` 此方法同样可以完成转换,但相比`parseInt`来说,性能稍差。 #### 其他类型转换示例 除了整数与字符串的转换外,我们还可以将其他基本数据类型如`double`、`...

    java.lang.NumberFormatException For inputstring 4294967295处理方法

    在Java中,`Integer.parseInt()` 和 `Integer.valueOf()` 方法默认将字符串转换为32位有符号整数。这意味着它们能够处理的范围是 `-2^31` 到 `2^31 - 1`,即 `-2147483648` 到 `2147483647`。因此,当试图将 `'...

    java类型转换IntegerStringLongFloatDoubleDate.doc

    - 另一种方式是通过 `Integer.valueOf(String)` 创建一个 `Integer` 对象,然后调用 `intValue()` 方法获取整数值。 2. **整数(int)到字符串(String)的转换**: - `String.valueOf(int)` 是最简洁的转换方法...

    java对象转换String类型的三种方法共1页.pdf

    在Java编程语言中,将对象转换为String类型是常见的操作,尤其在日志记录、输出显示或者进行字符串拼接时。以下将详细讲解三种主要的转换方法: 1. **toString() 方法** Java中的所有对象都继承自Object类,因此...

    JAVA实用进制转换

    对于从十六进制、八进制或二进制转换回十进制,我们可以使用`Integer.valueOf(String s, int radix)`方法。 - **十六进制转十进制**: - 示例:`Integer.valueOf("FFFF", 16).toString()` 返回 `"65535"` (十六进制...

    JAVA数据转换类型

    2. 使用 `Integer.valueOf()` 方法:`int i = Integer.valueOf("123").intValue();` 这两种方法都可以将字符串转换为整数,但需要注意的是,如果字符串不能被转换为整数,那么将抛出 `NumberFormatException` 异常...

    Java 之 String 类型

    - `String.valueOf(int i)`/`String.valueOf(double d)`:将整型/浮点型数值转换为字符串。 8. **字符串与对象的转换** - `toString()`:所有对象都有这个方法,用于将对象转换为字符串表示。 - `Object....

    java数据类型转换

    int i = Integer.valueOf(str).intValue(); // 使用valueOf // 或者 int i = Integer.parseInt(str); // 使用parseInt ``` - `valueOf`:此方法首先会创建一个Integer对象,然后再调用`intValue()`方法返回int值。 ...

    java 源码 (数字转换2)

    当我们需要将整数显示为人类可读的字符串时,可以使用`Integer.toString()`或`String.valueOf()`方法。例如,将一个int类型的数字转换成字符串: ```java int num = 123; String strNum = Integer.toString(num)...

    Java中string和int的互相转换问题

    使用String.valueOf()方法和Integer.toString()方法都是使用静态方法,将int类型转换为String类型。使用字符串连接符的方法则是将int类型转换为String类型的另一种方式,但是这种方法将创建一个新的String对象。 ...

    Integer类的使用方法

    在Java编程语言中,`Integer`类是一个非常重要的封装类,它用于将基本数据类型`int`封装成对象。这不仅增强了数据的灵活性,还提供了许多实用的方法来处理整数相关的操作。下面,我们将深入探讨`Integer`类的使用...

    java 进制转换

    `Integer.valueOf(String s, int radix).toString()` 此方法用于将指定基数的字符串转换为整数,并返回其字符串表示形式。`radix` 参数指定了字符串所表示的进制。 - **示例**: ```java String hexStr = "FFFF...

    Java字符串类型转换

    另外,`Integer.toString(int i)` 和 `" " + i` 也是常用的整型转字符串的方法。 3. **从布尔值到字符串**:`String.valueOf(Boolean b)` 可以将布尔值转换为字符串,其中`true`转换为`"true"`,`false`转换为`...

Global site tag (gtag.js) - Google Analytics