Java String类中的equals方法

来源:互联网 发布:淘宝进入店铺打不开 编辑:程序博客网 时间:2024/05/18 20:50

Java String类的方法equals

**equal比较的是两个对象所表示的字符是否相等, 而 == 比较的是两个对象是否相等.** /* * 分析:s1.equals(s)只是比较两个对象中的字符是否相等, 与对象类型无关 * public boolean equals(Object anObject) * 将此字符串与指定的对象比较。当且仅当该参数不为 null,并且是与此对象表示相同字符序列的 String 对象时,结果才为 true。 *  *  * String s1 = " hello ";  * 这个只是一个引用,内存中如果有"hello "的话,s1就指向它,如果没有才创建  * 如果你以后还用到 "hello "这个字符串的话并且是这样用:  * String s1= " hello ";  * String s3 = " hello ";  * String s4 = " hello ";  * 这3个变量都共享一个字符串 " hello " ,hello是限定字符串,因此是s1==s3为true * 而String s2 = new String( " hello ");  * 是根据 " hello "这个String对象再次构造一个String对象,将新构造出来的String对象的引用赋给s2 */class StringTest1{    public static void main(String[] args)     {        String s1="hello";        String s2=new String("hello");        String s3 = "hello";        String s4 = new String("hello");        System.out.println(s1==s2);  //false 尽管s1、s2的内容相同,但是它们是不同的字符串对象        System.out.println(s1==s3);  //true 因为s1、s3指向相同的限定字符"hello"        System.out.println(s2==s4);          //false s4是根据 " hello "这个String对象再次构造一个String对象,将新构造出来的String对象的引用赋给s4,和s2不相同        if(s1.equals(s2)){        //将此字符串与指定的对象比较。当且仅当该参数不为 null,并且是与此对象表示相同字符序列的 String 对象时,结果才为 true.            System.out.println("相等");        }        else{            System.out.println("不相等");        }    }}
0 0
原创粉丝点击