StringBuffer

StringBuffer和String的区别?
  前者长度和内容可变,后者不可变。
  若是使用前者作字符串的拼接,不会浪费太多的资源。java

StringBuffer的构造方法:
         public StringBuffer():无参构造方法
         public StringBuffer(int capacity):指定容量的字符串缓冲区对象
         public StringBuffer(String str):指定字符串内容的字符串缓冲区对象数组

    默认容量为16安全

添加功能:app

     public StringBuffer append(String str):追加
     public StringBuffer insert(int offset,String str):指定位置插入字符串ui

删除功能:
      public StringBuffer deleteCharAt(int index):删除指定位置的字符,并返回自己
      public StringBuffer delete(int start,int end):删除从指定位置开始指定位置结束的内容,并返回自己
替换功能:
      public StringBuffer replace(int start,int end,String str):从start开始到end用str替换spa

反转功能:
      public StringBuffer reverse()对象

截取功能:ci

    注意返回值类型再也不是StringBuffer自己了
      public String substring(int start)
      public String substring(int start,int end)资源

String -转化为-StringBuffer字符串

      String s = "hello";
          // 注意:不能把字符串的值直接赋值给StringBuffer
          // StringBuffer sb = "hello";
          // StringBuffer sb = s;
          // 方式1:经过构造方法
          StringBuffer sb = new StringBuffer(s);
          // 方式2:经过append()方法
          StringBuffer sb2 = new StringBuffer();
          sb2.append(s);

StringBuffer -转化为- String
          StringBuffer buffer = new StringBuffer("java");
          // String(StringBuffer buffer)
          // 方式1:经过构造方法
    String str = new String(buffer);
          // 方式2:经过toString()方法
          String str2 = buffer.toString();

1:String,StringBuffer,StringBuilder的区别?   A:String是内容不可变的,而StringBuffer,StringBuilder都是内容可变的。   B:StringBuffer是同步的,数据安全,效率低;StringBuilder是不一样步的,数据不安全,效率高   2:StringBuffer和数组的区别?   两者均可以看出是一个容器,装其余的数据。   可是呢,StringBuffer的数据最终是一个字符串数据。   而数组能够放置多种数据,但必须是同一种数据类型的。3:形式参数:         基本类型:形式参数的改变不影响实际参数        引用类型:形式参数的改变直接影响实际参数  *注意:          String做为参数传递,效果和基本类型做为参数传递是同样的。 

相关文章
相关标签/搜索