Java面向对象(13)--==操作符与equals方法
生活随笔
收集整理的這篇文章主要介紹了
Java面向对象(13)--==操作符与equals方法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
==:運算符
可以使用在基本數(shù)據(jù)類型變量和引用數(shù)據(jù)類型變量中
①如果比較的是基本數(shù)據(jù)類型變量:比較兩個變量保存的數(shù)據(jù)是否相等(類型不一定要相同,當要能夠統(tǒng)一)。
int i = 9;int j = 9;double d = 9.0;System.out.println(i == j); //trueSystem.out.println(i == d); //truechar c = 9;System.out.println(i == c); //truechar c1 = 'A';char c2 = 65;System.out.println(c1 == c2); //true②如果比較的是引用數(shù)據(jù)類型變量:比較兩個對象的地址值是否相同,即兩個引用是否指向同一個對象實體。
Account a1 = new Account("Tom",21);Account a2 = new Account("Tom",21);System.out.println(a1 == a2); //falseString s3 = new String("相同內容");String s4 = new String("相同內容");System.out.println(s3 == s4); //false//靜態(tài)域常量池問題,所以是trueString s1 = "相同內容";String s2 = "相同內容";System.out.println(s1 == s2); //trueequals():所有類都繼承了Object,也就獲得了equals()方法,也可以重寫。
只能比較引用類型,其作用與“==”相同,比較是否指向同一個對象。
格式:obj1.equals(obj2)
特別的,對類File、String、Date及包裝類(Wrapper Class)來說,equals()方法是比較類型和內容,而不考慮引用的是否是同一個對象,因為在這些類中重寫了Object類的equals()方法。我們自定義類通常也需要重寫equals()方法。
String s1 = "相同內容";String s2 = "相同內容";System.out.println(s1.equals(s2)); //trueString s3 = new String("相同內容");String s4 = new String("相同內容");System.out.println(s3.equals(s4)); //true總結
以上是生活随笔為你收集整理的Java面向对象(13)--==操作符与equals方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓口工游戏手机排行榜前十名(安卓口工游
- 下一篇: Java面向对象(14)--包装类的使用