java 字符串拼接优化_JAVA字符串拼接效率
比较string、stringbuffer、stringbuilder拼接效率
public class MainTest {
public static void main(String[] args) {
long n = 30000;
System.out.println("Start... "+n);
long start1 = System.currentTimeMillis();
String s1 = new String("hello");
for (long i = 0; i < n; i++)
{
s1+="拼接字符串的时间";
}
long end1 = System.currentTimeMillis();
long time1 = end1 -start1;
System.out.println("用String+=拼接字符串的时间"+time1);
long start2 = System.currentTimeMillis();
String s2 = new String("hello");
for (long i = 0; i < n; i++)
{
s2=s2+"拼接字符串的时间";
}
long end2 = System.currentTimeMillis();
long time2 = end2 -start2;
System.out.println("用String=String+拼接字符串的时间"+time2);
long start3 = System.currentTimeMillis();
String s3 = new String("hello");
for (long i = 0; i < n; i++)
{
s3=s3.concat("拼接字符串的时间");
}
long end3 = System.currentTimeMillis();
long time3 = end3 -start3;
System.out.println("用String.concat拼接字符串的时间"+time3);
long start4 = System.currentTimeMillis();
StringBuffer s4 = new StringBuffer("hello");
for (long i = 0; i < n; i++)
{
s4.append("拼接字符串的时间");
}
long end4 = System.currentTimeMillis();
long time4 = end4 -start4;
System.out.println("用StringBuffer.append拼接字符串的时间"+time4);
long start5 = System.currentTimeMillis();
StringBuilder s5 = new StringBuilder("hello");
for (long i = 0; i < n; i++)
{
s5.append("拼接字符串的时间");
}
long end5 = System.currentTimeMillis();
long time5 = end5 -start5;
System.out.println("用StringBuilder.append拼接字符串的时间"+time5);
System.out.println("End...");
}
}
输出结果:
Start... 30000
用String+=拼接字符串的时间32800
用String=String+拼接字符串的时间30609
用String.concat拼接字符串的时间14144
用StringBuffer.append拼接字符串的时间2
用StringBuilder.append拼接字符串的时间2
End...
分享到:
2016-12-27 18:01
浏览 404
评论
java 字符串拼接优化_JAVA字符串拼接效率相关推荐
- java用 拼接字符串的原理_Java String 拼接字符串原理详解
首先来一道思考题: String str1 = "111111"; String str2 = "222222"; String str = str1 + st ...
- java的字符定义_Java字符串定义及常用方法
String.StringBuffer和StringBuilder String修饰的是不可变的字符串,而StringBuffer和StringBuilder类的对象是可以被修改的. StringBu ...
- java中的字符串常量池_java字符串常量池
字符串常量池SCP jdk1.6是放在永久代(8中叫方法区或叫元空间)中; jdk1.7+中,字符串常量池放入了堆中,注意运行时常量依然存放在方法区,例如,Integer a = 40:Java在编译 ...
- java字符串的用法_Java字符串的重要方法的使用实例
String类将是您存储和处理语言的主要工具之一,本篇文章将带领大家对Java字符串的方法有个基础的认识,了解他的功能使用方法. 本文摘自千锋教育编著的<Java语言程序设计>,如需转载请 ...
- java字符串拆分 空字符_Java字符串拆分
java字符串拆分 空字符 Java String split() method is used to split the string into a string array based on th ...
- java split 字符串作为分隔符_Java 字符串分隔 split
Java中的我们可以利用 split 方法(Java.lang.string.split)把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项. s ...
- java字符串转时间_java字符串和时间转换
import java.text.SimpleDateFormat; import java.util.Date; //将long字符串转换成格式时间输出 public class LongToStr ...
- java 字节转字符_Java 字符串 之 字符,字节,字符串的转换
/** 题目: String 类的相关操作 1. 字符与字符串转换操作 2. 字节与字符串转换操作 3. 判断操作 4. 替换操作 5. 字符串的截取 6. 字符串的拆分 7. 字符串的查找 8. 字 ...
- java 全半角转换_Java字符串全半角转换
虽然生活中很少用到全角,但是有时还是会用到对字符串进行全半角的转换,尤其是全角转换为半角,在这里简单记录一下,以备以后使用参考: /** * 字符串全半角转换 */ package com.proje ...
最新文章
- Delta3D———通过游戏管理器组件和消息的扩展创建自定义行为 《转》
- CSS样式表初始化代码
- Python异常处理实例
- 局域网聊天工具的设计与实现 java设计代写代做代码源代码
- python电子相册制作代码大全_20 行 Python 代码即可制作精美证件照
- STM32利用库函数驱动OLED
- codevs 1729 单词查找树
- linux能上ps吗,在linux上使用ps(转载)
- pytorch自动求导-07
- JAVA 实现《中国象棋》游戏
- 74HC595在【8x8LED点阵】中的运用
- B站热榜 RSS 订阅 - 基于 RSSHub
- 如何给图片添加文字?图片加字功能怎么使用?
- Ps使用旋转扭曲制作图片
- jQJQJQJQJQJQ
- 天龙八部TLBB从0到1搭建教程-中
- [:,None]和[None,:]
- 计算机主机配置讲解,组装机电脑配置单讲解
- influxdb遇到时间点存储不了
- 中文为什么没有词干提取_词干中没有小写字母
热门文章
- android SQLite 批量插入数据慢的解决方案 (针对于不同的android api 版本)
- yum卸载遇到的问题--待解决
- 解决Eclipse Problems视图丢失图标问题
- FFMPEG more samples than frame size (avcodec_encode_audio2) 的解决方案
- 使用POI导出百万级数据到excel的解决方案
- 0x0F19B7EC (ucrtbased.dll)处(位于 ex6.exe 中)引发的异常: 0xC0000005: 写入位置 0x00740000 时发生访问冲突。
- 关于“Cannot find any provider supporting AES/ECB/PKCS7Padding”问题的解决方案
- JavaScript 运行时错误: 无法获取未定义或 null 一种解决方案
- 解决html5 audio iphone,ipd,safari不能自动播放问题
- 如何使用jQuery获取焦点元素?