string 和 stringbuffer 的区别

解决方案 »

  1.   

    String类对象中的内容一旦被初始化就不能再更改
    StringBuffer类用于封装内容可以改变的字符串
      

  2.   

    String不可边的
    StringBuffer可变的
      

  3.   

    StringBuffer 和StringBuilder 有什么不同吗
      

  4.   

    StringBuffer 是一个对象类型变量,可以修改而String 不能
    也就是能不能修改的不同吧。。
      

  5.   

    JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用 StringBuffers来动态构造字符数据
      

  6.   

    stringbuffer已经过时了 stringbuilder更有效率
      

  7.   

    将 StringBuilder 的实例用于多个线程是不安全的。如果需要这样的同步,则建议使用 StringBuffer。
    StringBuffer
    线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。 可将字符串缓冲区安全地用于多个线程。可以在必要时对这些方法进行同步,因此任意特定实例上的所有操作就好像是以串行顺序发生的,该顺序与所涉及的每个线程进行的方法调用顺序一致。 
    StringBuilder
    一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)。如果可能,建议优先采用该类,因为在大多数实现中,它比 StringBuffer 要快。 
      

  8.   

    String类对象中的内容一旦被初始化就不能再更改 
    StringBuffer类用于封装可以改变的字符串(也是平时说地追加数据)