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
待续。。。