String和StringBuffer的笔记

今天晚上学习了String和StringBuffer这两个字符串类。这两个对象的主要区别在于String对象其存储的字符串的内存是不可改变的。而Stringbuffer对象可随时改变其存储的区域的长度。

下面总结StringBuffer:

1、构造函数:StringBuffer()、StringBuffer(int capacity)、StringBuffer(String str)、StringBuffer(CharSequence seq)。第二个capacity表示可以容纳的字符数。

2、append(String str)方法将str添加到已存在字符串的尾部。其参数还可以是boolean、char等其他类型(几乎所有都可以)。

3、capacity() 返回可以容纳字符的容量。

4、charAt(int index)返回在index处的字符。

5、length() 返回存储的字符串数

6、ensureCapacity(int minimumCapacity)  设置容量至少为minimumCapacity

7、setLength(int newLength) 设置保存的字符串的长度,可以截断字符串(newLength小于保存字符串的的长度)。

8、insert(int offset,String str)  从offset处开始插入str。

9、insert(int index, char[] str, int offset, int len) 从index处插入str从offset开始,len长度的字符串。

10、setCharAt(int index, char ch)在index处改变字符为ch。(注意index与实际位置差一。数组一样。)

11、reverse()将字符翻转。

12、delete(int start, int end)从start开始到end被删除。

13、replace(int start, int end, String str)从start开始到end被str所替代。

14、indexOf(String str)查找字符或者子串str第一次出现的地方

15、lastIndexOf(String str)查找字符或者子串str是后一次出现的地方。

 

总结String:

1、构造函数:String(byte[] bytes)  、String(char[] value)、String(String original)

2、compareTo(String anotherString)  从第一个字符开始依次比较两个字符串ASC码。如果两个字符的ASC码相等则继续后续比较,否则直接返回两个ASC的差值。如果两个字符串完全一样,则返回0

3、compareToIgnoreCase(String str) 同上,只是忽略大小写

4、concat(String str) 在字符串尾部加上str

5、getBytes(Charset charset)
          使用给定的 charset 将此 String 编码到 byte 序列,并将结果存储到新的 byte 数组。

6、indexOf(String str)
          返回指定子字符串在此字符串中第一次出现处的索引。

7、isEmpty()
          当且仅当 length()0 时返回 true

8、trim()
          返回字符串的副本,忽略前导空白和尾部空白

9、toUpperCase()
          使用默认语言环境的规则将此 String 中的所有字符都转换为大写。

你可能感兴趣的:(java)