StringBuffer

StringBuffer

A:StringBuffer类概述
    * 通过JDK提供的API,查看StringBuffer类的说明
    * 线程安全的可变字符序列 
* B:StringBuffer和String的区别
    * String是一个不可变的字符序列
    * StringBuffer是一个可变的字符序列

* A:StringBuffer的构造方法:
    * public StringBuffer():无参构造方法
    * public StringBuffer(int capacity):指定容量的字符串缓冲区对象(默认值为16)
    * public StringBuffer(String str):指定字符串内容的字符串缓冲区对象
* B:StringBuffer的方法:
    * public int capacity():返回当前容量。    理论值(不掌握)
    * public int length():返回长度(字符数)。 实际值

 StringBuffer的添加功能

* * A:StringBuffer的添加功能

// 返回的内容还是StringBuffer本来,也就时一个类
    * public StringBuffer append(String str):
        * 可以把任意类型数据添加到字符串缓冲区里面,并返回字符串缓冲区本身
    * public StringBuffer insert(int offset,String str):
        * 在指定位置把任意类型的数据插入到字符串缓冲区里面,并返回字符串缓冲区本身

StringBuffer的删除功能

* A:StringBuffer的删除功能
    * public StringBuffer deleteCharAt(int index):
        * 删除指定位置的字符,并返回本身
    * public StringBuffer delete(int start,int end):
        * 删除从指定位置开始指定位置结束的内容,并返回本身

 StringBuffer的替换和反转功能

* A:StringBuffer的替换功能
    * public StringBuffer replace(int start,int end,String str):
        * start开始到end用str替换
* B:StringBuffer的反转功能
    * public StringBuffer reverse():
        * 字符串反转

 StringBuffer的截取功能及注意事项

* A:StringBuffer的截取功能
    * public String substring(int start):
        * 从指定位置截取到末尾
    * public String substring(int start,int end):
        * 截取从指定位置开始到结束位置,包括开始位置,不包括结束位置
* B:注意事项
    * 注意:返回值类型不再是StringBuffer本身。

 

 常见对象(StringBufferString的相互转换)

* A:String -- StringBuffer
    * a:通过构造方法
    * b:通过append()方法
* B:StringBuffer -- String
    * a:通过构造方法
    * b:通过toString()方法
    * c:通过subString(0,length);

StringBufferStringBuilder的区别

* A:StringBuilder的概述

    * 通过查看API了解一下StringBuilder

* B:面试题

    * String+,StringBuffer,StringBuilder的区别

    * StringBufferStringBuilder的区别

    * StringBufferjdk1.0版本的,是线程安全的,效率低

    * StringBuilderjdk1.5版本的,是线程不安全的,效率高

 

    * StringStringBuffer,StringBuilder的区别

    * String是一个不可变的字符序列

* StringBuffer,StringBuilder是可变的字符序列

 

 StringStringBuffer分别作为参数传递

 

* A:形式参数问题

 

    * String作为参数传递

 

    * StringBuffer作为参数传递

 

* B:案例演示

 

    * StringStringBuffer分别作为参数传递问题

 

基本数据类型的值传递,不改变其值

 

引用数据类型的值传递,改变其值

 

String类虽然是引用数据类型,但是他当作参数传递时和基本数据类型是一样的

 

posted @ 2019-10-11 20:49  疯人党  阅读(189)  评论(0编辑  收藏  举报