黑马程序员_Object类和String类

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------


1:Object类

(1)Object是类层次结构的根类,所有的类都直接或者间接的继承自Object类。
(2)Object类的构造方法有一个,并且是无参构造
(3)常用的方法:
A:toString() 返回对象的字符串表示,默认是由类的全路径+'@'+哈希值的十六进制表示。。
B:equals() 比较两个对象是否相同。默认情况下,比较的是地址值是否相同。
C:hashCode() 返回对象的哈希值。不是实际地址值,可以理解为地址值。
D:getClass() 返回对象的字节码文件对象,反射中我们会详细讲解
E:finalize() 用于垃圾回收,在不确定的时间
F:clone() 可以实现对象的克隆,包括成员变量的数据复制,但是它和两个引用指向同一个对象是有区别的。
2:String类

(1)多个字符组成的一串数据其实它可以和字符数组进行相互转换

(2)构造方法:

A:public String()
B:public String(byte[] bytes)
C:public String(byte[] bytes,int offset,int length)
D:public String(char[] value)
E:public String(char[] value,int offset,int count)
F:public String(String original)
(3)字符串的特点 字符串一旦被赋值,就不能改变。这里指的是字符串的内容不能改变,而不是引用不能改变。
(4)字符串的功能
A:判断功能
boolean equals(Object obj)  比较字符串的内容是否相同
boolean equalsIgnoreCase(String str) 比较字符串的内容是否相同,忽略大小写
boolean contains(String str) 判断大字符串中是否包含小字符串
boolean startsWith(String str) 判断字符串是否以某个指定的字符串开头
boolean endsWith(String str) 判断字符串是否以某个指定的字符串结尾
boolean isEmpty() 判断字符串是否为空
B:获取功能
int length() 获取字符串的长度
char charAt(int index) 获取指定位置的长度
int indexOf(int ch) 返回指定字符串中第一次出现的索引
int indexOf(String str) 返回指定字符串在此字符串 中第一次出现的索引
int indexOf(int ch,int fromIndex) 返回指定字符在此字符串 指定位置中第一次出现的索引
int indexOf(String str,int fromIndex) 返回指定字符串在此字符串指定位置中第一次出现的索引
String substring(int start) 从指定位置开始截取字符串,默认到末尾
String substring(int start,int end) 从指定位置开始到指定位置截取字符串
C:转换功能
byte[] getBytes()  把字符串转换成字节数组
char[] toCharArray() 把字符串转换成字符数组
static String valueOf(char[] chs) 把字符数组转成字符串
static String valueOf(int i) 把int类型的数据转成字符串
String toLowerCase() 把字符串转成小写
String toUpperCase() 把字符串转成大写
String concat(String str) 把字符串拼接
D:其他功能
a:替换功能 
String replace(char old,char new)
String replace(String old,String new)
b:去空格功能
String trim()
c:按字典比较功能
int compareTo(String str)
int compareToIgnoreCase(String str) 
3:StringBuffer
(1)用字符串做拼接,比较耗时并且也耗内存,而这种拼接操作又是比较常见的,为了解决这个问题,Java就提供了 一个字符串缓冲区类StringBuffer
(2)StringBuffer的构造方法
A:StringBuffer()     无参构造方法
B:StringBuffer(int size)     指定容量的字符串缓冲区对象
C:StringBuffer(String str)   指定字符内容的字符缓冲区对象
(3)StringBuffer的常见功能
A:添加功能
(1)public Stringbuffer append(String str) 可以将任何数据类型添加到字符缓冲区,并返回字符串缓冲区本身。
(2)public Stringbuffer insert(int offset,String str) 在指定的位置把任意的数据类型的数据插入到字符缓冲区中,并返回字符串缓冲区本身。 B:删除功能
(1)public StringBuff deleteCharAt(int index)   删除指定位置的字符,并返回本身
(2)public StringBuffer delete(int start,int end)    删除从指定位置开始,从指定位置结束的内容,并返回本身。
C:替换功能
(1) public StringBuffer replace(int start,int end String str)   从指定位置开始到指定位置结束,用str替换。
D:反转功能
public StringBuffer reverse(); 逆序排列字符串缓冲区的对象
E:截取功能
(1)public String substring(int start)  截取字符,从设置的位置开始,默认到最后结束
(2)public String substring(int start,int end)   截取字符从设置的位置开始,到设置的位置结束

(5)StringBuffer和StringBuilder的区别:
StringBuffer:同步的,数据安全,效率低。
StringBuilder:不同步的,数据不安全,效率高。
(6)String,StringBuffer,StringBuilder的区别
String的内容是不能改变的,而StringBuffer,StringBuilder的内容是可以改变。
StringBuffer是同步的数据安全但是效率低,StringBuilder是不同步的,数据不安全,但是效率高。
(7)注意的问题:
String作为形式参数,StringBuffer作为形式参数。
String作为形式参数,形参的改变不影响实际参数的改变
StringBuffer作为形式参数,形式参数的改变直接影响实际参数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值