A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 活的精彩 中级黑马   /  2015-12-5 00:10  /  800 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 活的精彩 于 2015-12-5 00:25 编辑

1:String类(1)多个字符组成的一个序列,叫字符串。所以,java就提供了这样的一个类供我们使用。
(2)创建字符串对象
A:String():无参构造
B:String(byte[] bys):传一个字节数组作为参数               
C:String(byte[] bys,int index,int length):把字节数组的一部分转换成一个字符串
D:String(char[] chs):传一个字符数组作为参数
E:String(char[] chs,int index,int length):把字符数组的一部分转换成一个字符
F:String(String str):把一个字符串传递过来作为参数
G:直接把字符串常量赋值给字符串引用对象(最常用)
备注:String对象一经创建就不会发生变化了,因为String类底层是被final修饰的数组,所以长度一旦创建,不能改变,也不能被继承。这个对象即便是赋新值也不是在原对象的基础上改变,而是创建一个新的字符串对象,将引用指向这个新的对象,会造成空间的浪费,效率较低。         
(3)补充:
1)“==”比较的是地址值,equals比较的是字符串中的内容
2)“ ”和null的区别
“ ”是字符串常量,同时也是一个String类的对象,既然是对象当然可以调用String类中的方法
null是空常量,不能调用任何的方法,否则会出现空指针异常,null常量可以给任意的引用数据类型
2.StringBuffer和StringBuilder
1).StringBuffer它是一个字符串缓冲区,用来存储和操作字符串。 线程安全效率低。
2).StringBuffer是一个字符串容器,那他空参的构造方法初始容量是16,当超过这个容量时,他的容量会自动增大。
3).StringBuffer是jdk1.0版本的,是线程安全的,效率低。 StringBuilder是jdk1.5版本的,是线程不安全的,效率高
4).String是一个不可变的字符序列。 StringBuffer,StringBuilder是可变的字符序列。
5).A:StringBuffer的构造方法:
public StringBuffer():无参构造方法
public StringBuffer(int capacity):指定容量的字符串缓冲区对象
public StringBuffer(String str):指定字符串内容的字符串缓冲区对象
B:StringBuffer的方法:
public int capacity():返回当前容量。        
public int length():返回长度(字符数)。
6).StringBuffer的添加功能
* public StringBuffer append(String str):
* 可以把任意类型数据添加到字符串缓冲区里面,并返回字符串缓冲区本身
* public StringBuffer insert(int offset,String str):
* 在指定位置把任意类型的数据插入到字符串缓冲区里面,并返回字符串缓冲区本身
7).StringBuffer的删除功能
* public StringBuffer deleteCharAt(int index): 删除指定位置的字符,并返回本身
* public StringBuffer delete(int start,int end):删除从指定位置开始指定位置结束的内容,并返回本身
8).StringBuffer的替换功能
* public StringBuffer replace(int start,int end,String str):   从start开始到end用str替换
9).StringBuffer的反转功能
* public StringBuffer reverse():   字符串反转
10).StringBuffer的截取功能(返回值是stringbuffer)
* public String substring(int start): 从指定位置截取到末尾
* public String substring(int start,int end):截取从指定位置开始到结束位置,包括开始位置,不包括结束位置
* 注意:返回值类型不再是StringBuffer本身
11.  1) String -- StringBuffer
* a:通过构造方法
* b:通过append()方法
2)StringBuffer -- String
* a:通过构造方法
* b:通过toString()方法
* c:通过subString(0,length);

2 个回复

倒序浏览
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
回复 使用道具 举报
用多了就熟悉了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马