`
rcyl2003
  • 浏览: 237377 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

String 与 StringBuffer效率比较

 
阅读更多

 


StringBuffer buffer 
= new StringBuffer();
for(int i=0;i<50000;i++)
...{
    buffer.append(
"hello");
}


String str
= new String();

for(int i=0;i<50000;i++)
...{
    str 
= str + "hello";
}


for(int i=0;i<50000;i++)
...{
    str 
+=  "hello";
}

上面三者运行速度StringBuffer是最快的,其次是第二个,最后是第三个。

小结:当进行大批量“加”时,最好用StringBuffe.

 

分享到:
评论

相关推荐

    String StringBuffer和StringBuilder区别之源码解析

    String、StringBuffer和StringBuilder的比较 通过上面的分析,我们可以看到,String类的字符串是不可变的,而StringBuffer和StringBuilder类的字符串可以被修改。StringBuffer类是线程安全的,而StringBuilder类...

    String ,StringBuffer与StringBuilder

    String, StringBuffer 与 StringBuilder 的区别 在 Java 中,String, StringBuffer 和 StringBuilder 三个类都是用于字符操作的,但它们之间有着很大的区别。 首先,String 是不可变类,意味着一旦创建了 String ...

    string和StringBuffer的区别

    在Java编程语言中,`String`和`StringBuffer`都是用来表示和操作字符串的重要类,但它们在使用场景和性能上有显著的区别。了解这些差异对于编写高效、优化的代码至关重要。 首先,`String`类是不可变的。这意味着...

    String和StringBuffer的区别

    在上述代码示例中,我们比较了使用`String`和`StringBuffer`进行5000次字符串拼接操作的时间消耗。当使用`String`时,每次循环都会生成新的`String`对象,导致总时间达到46687毫秒。而使用`StringBuffer`,由于其...

    java面试笔试题String 和StringBuffer的区别

    在Java编程语言中,`String`与`StringBuffer`是两个重要的字符串处理类,它们各自具有独特的特性和用途,尤其在面试或笔试中常被提及作为考察应聘者对Java基础知识掌握程度的重要知识点。 ### `String`类:不可变性...

    String-StringBuffer-StringBuilder

    这种设计使得`String`对象非常适用于作为键(key)在哈希表(如`HashMap`)中使用,因为不变性保证了哈希码的稳定,有利于提高查找效率。此外,由于`String`对象是不可变的,多个线程可以安全地共享同一个`String`...

    String、StringBuilder和StringBuffer的区别

    JVM会优化这种连续的字符串拼接,将它们合并为一个操作,因此在这种特定情况下,String的效率较高。 相比之下,`StringBuilder`和`StringBuffer`是可变的字符序列,它们允许在原有对象基础上进行修改,而不创建新...

    String&Stringbuffer

    ### String与StringBuffer知识点详解 #### 一、String与StringBuffer基本概念 **String**:在Java中,`String`类表示不可变的字符序列,它是最常用的字符串类。一旦创建了一个`String`对象,其内容便无法改变。这...

    String和StringBuffer详细用法总结

    ### 字符串的创建与比较 #### 创建字符串 - **直接赋值**:如`String s1 = "hello";`,这种方式创建的对象存储在常量池中,具有共享性。 - **使用`new`关键字**:如`String s2 = new String("hello");`,这种方式...

    StringBuffer和String_区别

    ### StringBuffer与String的区别详解 #### 一、概念与特性 **String** 是 Java 中一个不可变的类,代表了字符序列。一旦一个 String 对象被创建后,其内容就不能被改变。这使得 String 类非常适合用来表示常量或者...

    Java String 与 StringBuffer 用法区别

    没有临时的`StringBuffer`对象,也没有不必要的类型转换,从而大大提高了效率。 特别是在循环或递归中执行字符串拼接时,使用`StringBuffer`(或者它的线程安全版本`StringBuilder`)可以显著减少内存开销和提高...

    String和StringBuffer专题

    在Java编程语言中,`String`和`StringBuffer`是两个非常重要的类,它们与字符串操作密切相关。在处理字符串时,选择正确的工具至关重要,因为不同的方法可能会对程序的性能产生显著影响。 首先,我们来看一下`...

    浅析Java中String与StringBuffer拼接的区别

    在Java编程语言中,String和StringBuffer类都用于处理字符串,但它们在处理字符串拼接时有着显著的区别。本文将详细解析这两个类在拼接字符串时的行为差异。 首先,我们来了解一下String类。String对象在Java中是不...

    String和StringBuffer 的区别 .txt

    ### String与StringBuffer的区别 在Java编程语言中,`String`和`StringBuffer`是非常重要的两个类,它们分别用于处理不可变(immutable)和可变(mutable)字符串。理解这两个类之间的区别对于有效地管理和操作字符...

    String&StringBuffer&StringBuilder三者之间的区别-经典解析.doc

    - **可变性与效率**:StringBuilder与StringBuffer类似,也是可变的,允许直接修改对象。但是,StringBuilder没有实现线程安全,这意味着它不包含同步方法,因此在单线程环境中,StringBuilder通常比StringBuffer更...

    java中 String和StringBuffer的区别实例详解

    在字符串连接操作中StringBuffer的效率要明显比String高。String对象是不可变对象,每次操作String都会重新建立新的对象来保存新的值。StringBuffer对象实例化后,只对这一个对象操作。因此,在大量字符串连接操作中...

    初步支持String和StringBuffer类

    这里,`append`方法直接修改了`StringBuffer`内部的字符数组,没有产生新的对象,因此效率更高。 源码方面,`String`的实现是基于字符数组,而`StringBuffer`则扩展了`AbstractStringBuilder`类,同样使用字符数组...

    你知道String、StringBuffer和StringBuilder的区别吗

    在Java编程语言中,String、StringBuffer和StringBuilder都是用来处理字符串的重要类,它们各自具有不同的特性和使用场景。下面将详细解析这三个类的区别。 首先,`String`类是最基础的字符串处理类,它被设计为不...

Global site tag (gtag.js) - Google Analytics