实例测试java的Integer转String的效率问题1.8
时间:2019-10-18
本文章向大家介绍实例测试java的Integer转String的效率问题1.8,主要包括实例测试java的Integer转String的效率问题1.8使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
原文链接:https://blog.csdn.net/chicaohun7473/article/details/100851373
查看String源码时,读到源码的toString方法时,打算探究下几种转换的效率,网上查到该帖子时,
本地执行后发现结果与帖子并不相同,唯一的区别便是jdk的版本,故提出自己的结论!
测试环境:操作系统 windows 10,内存 8g,jdk 1.8,jvm参数是默认值,测试代码如下:
1 public static void main(String[] args) { 2 Integer[] intArr = new Integer[2000000]; 3 String[] strArr1 = new String[2000000]; 4 String[] strArr2 = new String[2000000]; 5 String[] strArr3 = new String[2000000]; 6 String[] strArr4 = new String[2000000]; 7 Long t1 = System.currentTimeMillis(); 8 for(int i = 0; i < 2000000; i++){ 9 intArr[i] = i + 1; 10 } 11 Long t2 = System.currentTimeMillis(); 12 for(int i = 0; i < 2000000; i++){ 13 strArr1[i] = String.valueOf(intArr[i]); 14 } 15 Long t3 = System.currentTimeMillis(); 16 for(int i = 0; i < 2000000; i++){ 17 strArr2[i] = Integer.toString(intArr[i]); 18 } 19 Long t4 = System.currentTimeMillis(); 20 for(int i = 0; i < 2000000; i++){ 21 strArr3[i] = intArr[i] + ""; 22 } 23 Long t5 = System.currentTimeMillis(); 24 for(int i = 0; i < 2000000; i++){ 25 strArr4[i] = (intArr[i]).toString(); 26 } 27 Long t6 = System.currentTimeMillis(); 28 System.out.println("t1 = " + t1); 29 System.out.println("t2 = " + t2); 30 System.out.println("t3 = " + t3); 31 System.out.println("t4 = " + t4); 32 System.out.println("t5 = " + t5); 33 System.out.println("t6 = " + t6); 34 System.out.println("赋值:" + (t2 - t1)); 35 System.out.println("String.valueOf(i):" + (t3 - t2)); 36 System.out.println("Integer.toString(i):" + (t4 - t3)); 37 System.out.println("i + \"\":" + (t5 - t4)); 38 System.out.println("i.toString():" + (t6 - t5)); 39 }
执行结果:
推荐使用 toString() 或者String.valueOf(i)方法。
原文地址:https://www.cnblogs.com/gilbertbright/p/11698642.html
- linux基础命令
- 国外大学自办星际赛事 鼓励学生自制AI来对战
- linux中的重要目录
- Mysql-2-数据库基础
- Shell-4-让文本飞
- Java程序员的日常——存储过程知识普及
- Java程序员的日常—— 基于类的策略模式、List<?>与List、泛型编译警告、同比和环比
- Shell-3-文件之名
- Mybatis文档阅读笔记(明日继续更新...)
- Java程序员的日常——SpringMVC+Mybatis开发流程、推荐系统
- 2017外媒看中国:会让你吃惊的中国自动驾驶
- Java程序员的日常—— POI与JDBC、Mockmvc与单元测试
- Shell-2-命令之乐
- Bash Shell 小试牛刀
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释