一、String.equals()的实现方法
对象(object类)的equals方法,有时候根据自己的需要,需要重写此方法(比如两个同类对象,如果其属性name相同就定为这两个对象是相同的,那么就需要重写equals方法)。“==”只是判断引用的相同,未经过重写的equals方法是判断对象的相同,而经过重写的方法可以根据自己的需求来定义两个对象相等的条件。
对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同。“==”比较两个变量本身的值,即两个对象在内存中的首地址。“equals()”比较字符串中所包含的内容是否相同。
比如:
String s1,s2,s3 = "abc", s4 ="abc" ;
s1 = new String("abc");
s2 = new String("abc");
那么:
s1==s2 是 false //两个变量的内存地址不一样,也就是说它们指向的对象不一样,故不相等。
s1.equals(s2) 是 true //两个变量的所包含的内容是abc,故相等。
对于非字符串变量来说,"=="和"equals"方法的作用是相同的都是用来比较其对象在堆内存的首地址,即用来比较两个引用变量是否指向同一个对象
二、String
1、Length():获取字符串的长度
2、charAt():返回指定索引处的 char 值。索引范围为从 0 到 length() - 1。序列的第一个 char 值在索引 0 处,第二个在索引 1 处,依此类推,这类似于数组索引。
3、getChars():public void getChars(int start,int end,char c[],int offset)
该方法的作用是将当前字符串从start到end-1位置上的字符复制到字符数组c中,并从c的offset处开始存放
4、repalce(): replace(CharSequence target, CharSequence replacement) ,用replacement替换所有的target,两个参数都是字符串。
5、toUpperCase():toUpperCase的意思是将所有的英文字符转换为大写字母,如:String cc = “aBc123”.toUpperCase();结果就是:ABC123
6、toLowerCase():toLowerCase的意思是将所有的英文字符转换为小写字母,如:
String cc = “aBc123”.toLowerCase();结果就是:abc123
7、trim():删除字符串头部及尾部的空格,删除的过程从外到内,直到碰到一个非空格的字符为止,所以不管前后有多少个连续的空格都会被删掉。
若带上字符型数组的参数,则是删除字符型数组中出现的任意字符。
8、toCharArray():该方法的作用是返回一个字符数组,该字符数组中存放了当前字符串中的所有字符