zoukankan      html  css  js  c++  java
  • String/StringBuilder/StringBuffer之间的区别

    String:字符串常量
    StringBuffer:字符串变量
    StringBuilder:字符串变量
    三者在执行速度方面比较:StringBuilder>StringBuffer>String

    String类型是不可改变的对象,当用String操作字符串时,实际上是不断地创建新的对象,原来的对象就会变成垃圾被GC回收,效率比较低。
    StringBuffer和StringBuilder是字符串变量,是可以改变的对象,当对字符串操作时,实际上是在一个对象上操作,这样不会像String一样创建一些额外的对象进行操作,效率较高。

    StringBuilder:线程非安全的
    StringBuffer:线程安全的
    当字符串缓冲区被多个线程使用时,StringBuilder的操作不能保证安全,但是速度最快,如果是在单线程下进行操作,大多数情况下建议用StringBuilder而不是StringBuffer

    总结:
    如果要操作少量数据用String
    单线程操作字符串缓冲区下大量数据用StringBuilder
    多线程操作字符串缓冲区下大量数据用StringBuffer

  • 相关阅读:
    今天面试一些程序员(新,老)手的体会
    UVA 10635 Prince and Princess
    poj 2240 Arbitrage
    poj 2253 Frogger
    poj 2485 Highways
    UVA 11258 String Partition
    UVA 11151 Longest Palindrome
    poj 1125 Stockbroker Grapevine
    poj 1789 Truck History
    poj 3259 Wormholes
  • 原文地址:https://www.cnblogs.com/ecosu/p/4286009.html
Copyright © 2011-2022 走看看