String类,StringBuffer,StringBuilder运行效率测试

本文通过计算生成1到100000的字符串所需时间,对比了String、StringBuffer和StringBuilder的性能差异。结果显示StringBuilder最快,但线程不安全;StringBuffer次之,线程安全;而String类最慢。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

计算生成1到100000的字符串,各自需要多少时间,计算时间的方法是用date类中的gettime()方法,注意:gettime()得到的时间是对象生成时,到1970年1月1日0点的毫秒数,并不是方法调用时的毫秒数。

源码如下:

package com.homework;

import java.util.Date;

public class TimeCeshi {
	public static void main(String[] args) {
		String s="";
		//String类需要的时间
		Date d=new Date();
		long l1=d.getTime();          //注意,比较的是对象创建的时间,不是方法调用处的时间
		for(int i=0;i<100000;i++) {
			s+=i;
		}
		Date d1=new Date();
		long l2=d1.getTime();
		System.out.println(l2-l1);
		//Stringbuffer需要的时间
		StringBuffer sb=new StringBuffer();
		Date d2=new Date();
		long l3=d2.getTime();
		for(int i=0;i<100000;i++) {
			sb.append(i);
		}
		Date d3=new Date();
		long l4=d3.getTime();
		System.out.println(l4-l3);
		//Stringbuilder的时间
		StringBuilder sb1=new StringBuilder();
		Date d4=new Date();
		long l5=d4.getTime();
		for(int i=0;i<100000;i++) {
			sb1.append(i);
		}
		Date d5=new Date();
		long l6=d5.getTime();
		System.out.println(l6-l5);
		
	}

}

得到结果是

26113
4
3
可以看出,Stringbuilder的速度最快,但是线程不安全,Stringbuffer,次之,线程安全;String类速度最慢,使用中尽量避免此类
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值