不使用「==」比較.NET中的本地化字符串的原因是什麼?如果我使用CultureInfo,比較將如何執行?我應該使用'=='進行.NET本地化字符串比較嗎?
11
A
回答
10
==
對文化不敏感 - 這是一個簡單的序數比較。因此,兩個字符串在文化上相同 - 或者在其他規範化形式方面甚至是相同的 - 可以通過==
等於而不是。它基本上把每個字符串看作一個char
數組。
10
重載String.operator ==
將執行文化未知的序數比較–它使用heavily optimized unrolled loop逐字節比較字符串。
它調用的內部函數與String.Equals(a, b, StringComparison.Ordinal)
14
如果您將文化意識的字符串與==比較,例如「Strasse」與「Straße」,則它會返回false。
如果你需要文化感知的比較UI的東西(Sorting of Listview),你可以使用String.Compare和相關的CultureInfo。
CultureInfo ci = new CultureInfo("de-DE");
String.Compare("Strasse", "Straße", true, ci) // Returns zero
+3
+1爲例。 – Otiel
相關問題
- 1. 本地化字符串比較
- 2. 應該在字符串中使用嚴格的比較嗎?
- 3. 使用通用比較器進行字符串比較
- 4. 我應該使用java.text.MessageFormat進行沒有佔位符的本地化消息嗎?
- 5. 使用我的類的字符串字段進行比較的比較器?
- 6. CUDA .Net比較字符串
- 7. 我應該使用const參數的SQL字符串(.NET C#)嗎?
- 8. 在shell腳本中使用斜槓進行字符串比較
- 9. 字符串比較的並行優化
- 10. 與Extjs進行字符串比較
- 11. 將sqlite與字符串進行比較
- 12. 將char與字符串進行比較
- 13. 與其他字符串進行比較
- 14. 將Arraylist與字符串進行比較
- 15. JLabel未與字符串進行比較
- 16. 在python中進行字符串比較
- 17. 爲.net winforms應用程序進行字符串比較不區分大小寫
- 18. 我應該如何使用多個參數進行本地化?
- 19. 如何與字符串文字進行字符串比較?
- 20. 我應該使用struct來比較字節嗎?
- 21. 比較版本(字符串)
- 22. 字符串版本比較
- 23. 比較字符串文本
- 24. 字符串Specs2比較不應該與應該
- 25. 使用本地化字符串進行驗證
- 26. 如何正確使用VarArgs進行字符串本地化?
- 27. 如何比較C#中的本地化字符串
- 28. 比較兩列字符串進行行式文本匹配
- 29. 我可以將一個字符串與一個數字進行比較嗎?
- 30. 將字符串與字符串數組進行比較
你問關於C#「==」運算符嗎?如果是這樣,你應該添加C#標籤。 – phoog