声明:
String类型是引用类型,不是基本数据类型。
String中的方法都是实例方法,因此调用时需要创建一个特定的字符串来访问(注:非实例方法即是静态方法,实例和非实例方法调用的区别在于一个需要创建特定对象访问,而另外一个直接使用)。
String类中的常用方法:
String s1 = "Hello World";
(1)获取字符串长度
int l = s1.length()
(2)从字符串中获取字符
char ch = s1.charAt(index);注:index是下标,它的取值范围是0~s1.length()-1
(3)连接字符串
String s3 = s1.concat(s2);注:等价于 String s3 = s1 + s2;
(4)字符串中所有字母转换为大写或小写
大写:String s2 = s1.toUpperCase();小写:String s3 = s1.toLowerCase();
(5)去白
String s2 = s1.trim();作用:去掉字符串两边的空白字符串
(6)两两字符串比较
方法 | 描述 |
---|---|
equals(s2) | 如果该字符串等于s2,返回true |
equalsIgnoreCase(s2) | 如果该字符串等于字符串s2,返回true,不区分大小写 |
compareTo(s2) | 返回一个大于0、等于0、小于0的整数,表明一个字符串是否大于、等于或小于s2 |
compareToIgnoreCase(s2) | 与上同 |
startWith(prefix) | 如果字符串以特定的前缀开始,返回true |
endWith(suffix) | 如果字符串以特定的后缀结束,返回true |
contains(s2) | 如果s2 是该字符串的子字符串,返回true |
(7)获取子串
String s2 = s1.substring(beginIndex);String s3 = s1.substring(beginIndex,endIndex);
注:
beginIndex到endIndex范围是左闭右开区间 [beginIndex,endIndex);
substring全小写(8)获取字符串中的字符或子字符串
方法 | 描述 |
---|---|
indexOf(ch) | 返回字符串中出现的第一个ch的下标,若没有匹配,换回-1 |
indexOf(ch , fromIndex) | 返回字符串中fromIndex之后出现的第一个ch的下标,若没有匹配,返回-1 |
indexOf(s2) | 返回字符串中出现的第一个字符串s2的下标,若没有匹配,返回-1 |
indexOf(s2,fromIndex) | 返回字符串fromIndex之后出现的第一个字符串s2的下标,若没有匹配,返回-1 |
lastIndexOf(ch) | 返回字符串中出现的最后一个ch的下标,若没有匹配,换回-1 |
lastIndexOf(ch,fromIndex) | 返回字符串中fromIndex之前出现的最后一个ch的下标,若没有匹配,返回-1 |
lastIndexOf(s2) | 返回字符串中出现的最后一个字符串s2的下标,若没有匹配,返回-1 |
lastIndexOf(s2 , fromIndex) | 返回字符串fromIndex之前出现的最后一个字符串s2的下标,若没有匹配,返回-1 |
tips:
①不能使用操作符 == 判断两个字符串变量内容是否相同,它 只能监测 String1 和 String2 是否指向同一个对象,判断内容是否相同,应该使用equils()方法。②不能在nextByte()、nextShort()、nextInt()、nextLong()、nextFloat()、nextDouble()和next()之后使用nextLine().