1、字符串比较
需要了解的 知识
1.1使用“==”比较
比较对象是否引用同一块内存,是则返回true,否则返回false
1.2使用equals()函数比较
比较String值是否相同,equals()、equalsIgnoreCase()用于对两个字符串的内容进行等价性检查。equalsIgnoreCase()方法忽略字符串大小写用于进行比较
举例如下:
public class StringClass {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String s1="java";
String s2=new String("JAVA");
if (s1.equalsIgnoreCase(s2))
System.out.println("s1的值和s2的值相同");
else
System.out.println("s1的值和s2的值不同");
}
}
1.3使用CompareTo()函数比较
返回整型数字,比较串值大小。CompareTo()函数用于比较两个串的大小,结果可为正负以及0,主要取决于字典顺序,区分大小写
例子如下:
public class StringClass {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String s1="java";
String s2=new String("JAVA");
int x=s1.compareTo(s2);
System.out.print(x);
}
}
最终的输出结果为32.原因为J的ASCII码为74,j的ASCII码为106.CompareTo()函数在比较的时候就挨个比较字符,直到找到不同的字母然后输出差值
2、分割字符串函数split()
很好理解,需要注意分割字符写入时有时需要转义字符
public class StringClass {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String s1="aa.bb.cc,dd ff";
String s[]=s1.split("\\.|,| ");//这里需要使用转义字符“/”
for (String ss:s){
System.out.println(ss);
}
}
}
最后运行结果为
aa
bb
cc
dd
ff
3、查找函数indexOf()
indexOf()函数是从左向右查找
lastIndexOf()函数是从右向左开始查找
contains()函数是表示是否包含某一字符串
startsWith()函数是查找是否是由某一字符串开头
endsWith()函数是查找是否由某一字符串结尾
示例代码如下:
public class StringClass {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String s1="I am a student and like study Java";
int x=s1.indexOf("and");
int y=s1.lastIndexOf("and");
boolean z=s1.contains("and");
boolean z1=s1.startsWith("I");
boolean z2=s1.endsWith("Java");
System.out.println(x+" "+y);
System.out.println(z+" "+y+" "+z);
}
}
运行结果如下
15 15
true 15 true
注意:上述函数区分大小写