学习目标:
1.看Java.lang.string类的源码
2.掌握常用方法的使用
3.知道常用方法的实现原理
学习内容:
一、介绍
String是Java.lang下的实现类,实现了java.io.Serializable, Comparable<String>, CharSequence这三个接口,这使得String可序列化,可比较,有序。String被final关键字修饰,不可被继承,所以当new对象时,就会在常量池中存在。String类内部声明了一个私有的char类型的数组,String底层是用char[]存储的。
二、构造器
1 空参构造器
2 带参构造器:最基本的String ,char[],byte[],StringBuffer,StringBuilder要么加上offset和count,在要么加上编码。
三、主要方法
charAt(int index):返回指定索引(index)位置的字符序列的字符。index(0,字符串.length)。
getChars(int start,int end,char c[],int offset):将当前字符串从start到end-1位置上的字符复制到字符数组c中,并从c的offset处开始存放。
equals(object anObject):判断该字符串与传进来的对象的地址是否相同,相同返回true,否则返回false。
equalsIgnoreCase(String anotherString):忽略大小写时,判断是否相等。
compareTo(String anotherString):比较该字符串和传入的字符串,若返回0,说明二者相等,小于0,该字符串小于传入的,否则大于。
compare(String s1, String s2):比较传入的字符串,若返回0,二者相等,小于0,S1 < S2。
compareToIgnoreCase(String str):在忽略大小写的条件下,比较该字符串和传入的字符串,若返回0,说明二者相等,小于0,该字符串小于传入的,否则大于。
startsWith(String prefix, int toffset):判断该字符串是否从索引为toffset处以prefix开始的,若是返回true,否则返回false。
endsWith(String suffix):判断该字符串是否以suffix为后缀的,若是返回true,否则返回false。
indexOf(int ch):返回指定字符的第一个匹配项在此字符串中的索引。
lastIndexOf(int ch):返回该字符的最后一个匹配项在此字符串中的索引。
substring(int beginIndex):返回该字符串从beginIndex的子字符串。
concat(String str):把该字符串和传入的str连接。
replace(char oldChar, char newChar):让新的字符串取代老的字符串并且返回一个String类型的字符串。
split(String regex,int limit):按照regex分割,并且返回一个String[]。
toLowerCase(locale locale):该字符串小写后返回。
toUpperCase(locale locale):该字符串大写后返回。
trim():删除该字符串前面后后面的空格,返回一个String。
valueOf(Object obj)将传入的obj转为String类并且返回。
valueOf(Object obj)
toLowerCase(Locale locale)
String[] split(String regex, int limit)