String字符串连接性能优化StringBuilder(阿里Java开发手册规范)
2021/7/15 17:05:52
本文主要是介绍String字符串连接性能优化StringBuilder(阿里Java开发手册规范),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
StringBuilder字符串连接性能优化(参考阿里巴巴Java开发手册规范处理)
查看阿里巴巴开发手册,使用StringBuilder进行资源拼接,否则造成资源的浪费
String与StringBuilder与StringBuffer区别
继承关系
String | StringBuffer | StringBuilder |
---|---|---|
线程安全 | 线程安全 | 线程不安全 |
执行速度最慢 | 执行速度其次 | 执行速度最快 |
不可变的字符串序列 | 可变的字符串序列 | 可变的字符串序列 |
测试一下他们之间的耗时
public static void main(String[] args) { long startTime = System.currentTimeMillis(); String str = "start"; for (int i = 0; i < 100000; i++) { str = str + "hello"; } System.out.println(System.currentTimeMillis() - startTime); long startTime1 = System.currentTimeMillis(); StringBuilder strBuilder = new StringBuilder("start"); for (int i = 0; i < 100000; i++) { strBuilder = strBuilder.append("hello"); } System.out.println(System.currentTimeMillis() - startTime1); }
当您定义这个变量时,根据Java的对象池机制,JVM-JAVA虚拟机会在内存的堆栈中的某一个地址分配一个字符串常量 start , 因此是不可以继续追加的,当使用 '+'后相当于生成了一个新的字符串常量。
多次测试发现 String直接连接的方式真的太耗时了!!!
阿里JAVA开发手册地址
手册阿里云盘链接:https://www.aliyundrive.com/s/MEtW4t5DdGh
这篇关于String字符串连接性能优化StringBuilder(阿里Java开发手册规范)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-05并查集详解与实现教程
- 2024-11-05大厂数据结构与算法入门指南
- 2024-11-05大厂算法与数据结构入门指南
- 2024-11-05二叉树入门教程:轻松掌握基础概念与操作
- 2024-11-05红黑树入门教程:从零开始理解红黑树
- 2024-11-05初学者必备:链表基础知识详解
- 2024-11-05平衡树入门教程:理解、构建与应用
- 2024-11-05数据结构入门教程:轻松掌握基础知识
- 2024-11-05数据结构与算法入门教程
- 2024-11-05优先队列入门教程:理解与实现