我現在在學Java。當我使用==
和.equals()
進行字符串比較時,我得到了不同的結果。但是沒有編譯錯誤。任何人都可以解釋這兩個操作之間的區別嗎?==和.equals()之間的區別?
-1
A
回答
1
==
測試引用相等。
.equals()
試驗值相等。
例子:
String fooString1 = new String("Java");
String fooString2 = new String("Java");
// false
fooString1 == fooString2;
// true
fooString1.equals(fooString2);
注:
==
處理空字符串值。
.equals()
從一個空字符串將導致Null Pointer Exception
當==用於字符串之間對比
3
s1 == s2
比較字符串參考文獻;這很少是你想要的。s1.equals(s2)
比較兩個字符序列;這幾乎總是你想要的。
0
然後它檢查的對象的參考。但是當使用equals時,它實際上會檢查String的內容。因此,例如
String a = new String("ab");
String b = new String("ab");
if(a==b) ///will return false because both objects are stored on the different locations in memory
if(a.equals(b)) // will return true because it will check the contents of the String
我希望這有助於
相關問題
- 1. C#中的==運算符和Equals()方法之間的區別?
- 2. 在java字符串中equals和compareto方法之間的區別
- 3. '+ ='和'= +'之間的區別?
- 4. {!!之間的區別!!}和{{}}
- 5. ==和case之間的區別?
- 6. '#','%'和'$'之間的區別
- 7. | =和^ = css之間的區別
- 8. 「%〜dp0」和「。\」之間的區別?
- 9. .eq之間的區別。和==
- 10. `%in%`和`==`之間的區別
- 11. 在調用equals方法時,這兩個appraoch之間的區別?
- 12. SPFile和PublishingPage類別之間的區別
- 13. System.Timers.Timer Enabled = true和.Start()之間的區別Enabled = true和.Start()之間的區別
- 14. NSthread和NStimer和NSNotifcation之間的區別?
- 15. Java和C#和.NET之間的區別
- 16. sys.log()和console.log()和console.error()之間的區別?
- 17. $ .ajax()和$ .get()和$ .load()之間的區別
- 18. javascript中的/ * * /和//之間的區別
- 19. python中的[]和[,,]之間的區別
- 20. QWidget的setStyleSheet和QApplication之間的區別
- 21. CKeditor的getHtml()和getData()之間的區別
- 22. make中的「$(shell ...)」和「$$(...)」之間的區別
- 23. C中的/ +和+之間的區別?
- 24. Alamofire的responseJSON和responseData之間的區別
- 25. WordPress的:site_id和blog_id之間的區別?
- 26. '|'之間的區別和 '+' 的位操作
- 27. 春季的/ **和/ *之間的區別
- 28. Satchmo的local_settings.py和settings.py之間的區別
- 29. String.Compare和CultureInfo的CompareInfo之間的區別
- 30. XMLReader.Create()和新的XMLTextReader()之間的區別
感謝戈庫爾。這非常有用。 – 2013-04-06 15:50:20