@Test
public void my_test() throws Exception {
Map m = new HashMap();
m.put("1", "23333333");
long start = System.currentTimeMillis();
for (Integer i = 0; i < 1000000; i++) {
String aa = m.get("1")+"";
}
System.out.println("String aa = i + \"\";");
System.out.println(System.currentTimeMillis() - start);
long start1 = System.currentTimeMillis();
for (Integer i = 0; i < 1000000; i++) {
String aa = String.valueOf(m.get("1"));
}
System.out.println("String aa = String.valueOf(i)");
System.out.println( System.currentTimeMillis() - start1);
long start2 = System.currentTimeMillis();
for (Integer i = 0; i < 1000000; i++) {
String aa = m.get("1").toString();
}
System.out.println("String aa = i.toString()");
System.out.println( System.currentTimeMillis() - start2);
long start3 = System.currentTimeMillis();
for (Integer i = 0; i < 1000000; i++) {
String aa =(String)m.get("1");
}
System.out.println("String aa = (String)i");
System.out.println(System.currentTimeMillis() - start3);
long start4 = System.currentTimeMillis();
for (Integer i = 0; i < 1000000; i++) {
}
System.out.println("不操作");
System.out.println(System.currentTimeMillis() - start4);
}
结果
String aa = i + “”;
78
String aa = String.valueOf(i)
15
String aa = i.toString()
19
String aa = (String)i
11
不操作
6
综上所述
就转换String速度上来说:String aa = i + “” 虽然方便,却很耗时,不建议大家使用。
String aa = (String)i 强转固然快,但不是很适用。
建议大家使用 String.valueOf(i) 方法。
希望能帮到大家。大家如果有兴趣可以来我的网站看看:http://www.jiegelo.com