------- android培训、java培训、期待与您交流! ----------
String类:
特点:
1、字符串是一个特殊的对象。
2、字符串一旦初始化就不可以被改变。
3、String不能被继承。
一个常见的面试题:
String str = “abc” 和 String str1 = new String(“abc”);的区别:
“abc”是一个对象,前者只创建了一个对象,后者为两个对象。
1、获取
字符串中的包含的字符数,也就是字符串的长度。
int length();
根据位置获取位置上的某个字符。
char charAt(int index);
根据字符获取该字符在字符串中位置。
int indexOf(int ch)返回的是ch第一次在字符串中出现的位置;
int indexOf(int ch,int fromIndex);从fromIndex指定位置开始,查找ch在在字符串中出现的位置;
2、判断
字符串中是否包含某一个子串。 boolean contains(str)
字符串中是否有内容。 boolean isEmpty()
字符串是否是以指定内容开头。 boolean startsWith(str)
字符串是否是以指定内容结尾。 boolean endsWith(str)
判断内容是否相同,并忽略大小写。 boolean equalsIgnoreCase()
3、转换
将字符数组转换成字符串。
构造函数:String(char[]),String(char[],offset,count);
静态方法:static String copyValueOf(char[]);
Static String copyValueOf(char[],offset,count);
Static String valueOf(char[]);将基本数据类型转换为String。
将字符串转换成字符数组。
char[] toCharArray();
将字节数组转换成字符串。
将字符串转换成字节数组。
Byte[] getBytes();
4、替换
replace(oldchar,newchar);返回的是一个新的字符串。如果要替换的字符不存在,返回的还是原字符串。
replace(str,restr);
5、切割
String[] split(regex);
子串
String substring(begin);
String substring(begin,end);
转换大小写,去除空格,比较
将字符串转成大写或小写。
String toUpperCase();
String toLowerCase();
将字符串两端的多个空格去除。
String trim();
对两个字符串进行自然顺序的比较。
Int compareTo(String);
练习1:去除字符串两端的空格。
- public static String myTrim(String str) {
- int start = 0,end = str.length()-1;//初始化两个指针变量,一前一后
- while(start<=end && str.charAt(start)==' ') //从前取第一个不为空格的角标值
- start++;
- while(start<=end && str.charAt(end)==' ')//从后往前取第一个不为空格的角标值
- end--;
- return str.substring(start,end+1);//截取这个字符串
- }
public static String myTrim(String str) { int start = 0,end = str.length()-1;//初始化两个指针变量,一前一后 while(start<=end && str.charAt(start)==' ') //从前取第一个不为空格的角标值 start++; while(start<=end && str.charAt(end)==' ')//从后往前取第一个不为空格的角标值 end--; return str.substring(start,end+1);//截取这个字符串 }