String 类是不可改变的,所以你一旦创建了 String 对象,那它的值就无法改变了。如果需要对字符串做很多修改,那么应该选择使用StringBuffer、StringBuilder。
public class Teststring {
public static void main (String args[]) {
String str1 = "abc";
String str2 = "abcd";
String str3 = "ABC";
//compareTo() 的返回值是int, 它是先比较对应字符的大小(ASCII码顺序)
//1、如果字符串相等返回值0
//2、如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值(ascii码值)(负值前字符串的值小于后字符串,正值前字符串大于后字符串)
//3、如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方全比较完,这时就比较字符的长度.
System.out.println(str1.compareTo(str3));
System.out.println(str1.compareToIgnoreCase(str3));
//将str1与str3比较,忽略大小写,返回true
System.out.println(str1.equalsIgnoreCase(str3));
//将str1与str3比较,考虑大小写,返回false
System.out.println(str1.equals(str3));
//string1==string2,是值相等,而且内存地址也相等,是完全的相等
//string1.equals(string2)为true,只是值相等
System.out.println(str1==str3);
//egionMatches() 方法用于检测两个字符串在一个区域内是否相等。
System.out.println(str1.regionMatches(0, str2, 0, 3));
System.out.println(str1.regionMatches(0, str2, 0, 4));
}
}
javac Teststring.java java Teststring 32 0 true false false true false
待续。。。