3.6.9(10) 构建字符串

一、构建字符串

  通常情况下我们构建字符串都是这个样子的:

String str = "测试";

  如果我们进行字符串的拼接,是这个样子的:

String str2 = str+"哈哈";

二、问题说明

  我们这样进行字符串的拼接完全没有任何问题,方便快捷,但是这里就有一个考虑,如果这样拼接的次数和量比较大的话,就回非常的影响程序的运行效率,因为每次进行拼接的时候都会创建一个String的对象。

三、解决

  在jdk5.0中引入了StringBuilder类,这个类的前身是StringBuffer,我们可以使用StringBuilder的append方法进行字符串的拼接,这样拼接出来的效率要高于+拼接(尤其是拼接量比较大的时候)。

    /**
     * Description :字符串的拼接效率测试
     * @param
     * @return
     * @exception
     * @author     :loulan
     * */
    @Test
    public void builderString() {
        // +拼接开始时间
        long time1 = System.currentTimeMillis();

        String strj = "开始:";
        for (int i = 0; i < 10000; i++) {
            strj += i;
        }
        // +拼接结束时间,同时是StringBuilder拼接开始时间
        long time2 = System.currentTimeMillis();

        StringBuilder sb = new StringBuilder("开始:");
        for (int i = 0; i < 10000; i++) {
            sb.append(i);
        }

        // StringBuilder结束时间
        long time3 = System.currentTimeMillis();

        System.out.println("两种拼接方式出来的字符串是否相同: " + strj.equals(sb.toString())); // true
        System.out.println("+方式拼接完成执行时间:"+(time2-time1)+"ms");                     // 329ms (个人电脑cpu不同,结果不同)
        System.out.println("StringBuilder方式拼接完成执行时间:"+(time3-time2)+"ms");         // 1ms
    }

  所以大量的拼接的时候请使用StringBuiler

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值