------- android培训、java培训、期待与您交流! ---------
黑马程序员_java api string类
一 .String类
String类是final的,所以不能有子类,也不能复写其中的方法。
字符串的最大特点是一旦被初始化就不可以被改变,但有时候给我们的错觉是会变化的,其实只是地址发生了变化。
例如String s1=”abc”;s1=”kkk”;当你打印s1时,s1=”kkk”,其实对象”s1”内存地址不变而是s1指向了对象”kkk”。
二.字符串方法
1.获取:
1.1获取字符串中包含的字符数(长度) int length。
1.2根据位置获取位置上某个字符 char charAt(int index)。
1.3根据字符获取该字符在字符串中的位置 int indexof(int ch)。返回的ch是字符在此字符串中第一次出现的索引位置。Int indexof(int ch,int fromIndex),从fromIndex指定位置开始,获取ch在字符串中出现的位置。
2.判断
2.1判断字符串中是否包含某一个字串。
Boolean Contains(str);
2.2判断字符串中是否有内容。
BooleanisEmpty();原理就是判断长度是否为零。
2.3判断字符串是否以指定内容开头。
BooleanStartSwith(str);
2.4判断字符串是否以指定内容结尾。
BooleanendSwitch(str);
2.5判断字符串内容是否相同,复写了Objiect类中的equals方法。
Booleanequals(str);
2.6判断内容是否相同,并忽略大小写。
BoileanequalsIgnorecase();
3.转换
3.1将字符数组转换成字符串。
够造函数:String(char[])String(char[],offset,count)部分转换。
静态方法static StringCopyvalueof(char[]);
static String Copyvalueof(char[],offset,count);部分转换。
3.2将字符串转成字符数组。
Char[]tocharArry(); 例如:String s=”abc”; char[] sc=s.tocharArray();
3.3将字节数组转成字符串。
String (byte []);
3.4将字符串转成字节数组。
Byte[] getBytes();
3.5将基本数据类型转成字符串。
Static String Valueof(int);
Static String Valueof(double);
例如:3+” ”=String.Valueof(3);
特殊:字符串和字节数组在转换过程中是可以指定编码表的。
4.替换
String replace (oidchar,newchar);
如果要替换的字符不存在,返回的还是原串。
不仅可以直接替换字符,也可以替换字符串中连续几个字符。
5.切割。
String [] split(regex);
例:String s=”zhangsan,lisi,wangwu”;
String[] arr=s.split(“,”);
这里以逗号为切割,所以切成zhangsan ,lisi,wangwu.
6.子串。获取字符串中的一部分。
String SubString(begin);
String SubString(begin,end);
这里的begin和end是指定字符的位置。
例String s=”abcdef”;
Strings1=s.substring(2);//从指定位置开始到结尾。
Strings2=s.substring(2,4)//包含头不包含尾。
如果角标不存在,会出现字符串角标越界异常。
7.转换,去除空格,比较。
7,1将字符串转成大写或者小写。
StringtoUppercase();转成大写。
StringtoLowercase();转成小写。
7.2将字符串两端的空格去除。
Stringtrim();
7.3对两个字符串进行自然顺序的比较。
IntcompareTo(string)
例:String s1=”abc”;strings2=”aaa”;
比较后,会返回b和a的ASCTT码的差值,这是因为字符串s1和s2首个字符都为a相同,所以比较后一个,如此进行下去。
8.学习总结
这章没什么讲的,主要是理解字符串一旦被初始化就不能被改变这一说法和熟练使用操作字符串方法。