2017-04-18 78 views
0

我正在做一個大學任務,我必須建立4個類,其中一個是接口。建立不區分大小寫的電影數據庫

我需要確保字符串不區分大小寫,例如「教父」,「教父」,「教父」被視爲同一部電影。我怎樣才能做到這一點?

+2

覆蓋您的Movie的equals類,並確保名稱String檢查不區分大小寫。與hashCode方法相同(也許在散列它之前將其轉換爲全部大寫)。 –

+0

字符串本身不區分大小寫。這是**比較**,區分大小寫。這是一個重要的區別,因爲它教會你需要考慮何時進行比較。如果是關於將Movie類存儲在HashMap中,請閱讀上面的註釋。如果是關於排序,則需要研究不區分大小寫的排序等。一旦您可以準確地告訴我們代碼中的哪個位置正在進行比較,人們可以用更具體的答案來幫助您。 –

回答

0

除了Aaron說的之外,我想指出它的確依賴於你的實現。順便說一句,我看到它,你的任務是創建一個「搜索」功能,搜索數據庫。正確地存儲電影名稱會將它們保存爲其實際格式(「教父」),但是當啓動搜索時,您希望使用String .equalsIgnoreCase()函數將搜索查詢與數據庫相匹配。例如:

String a = "The Godfather" 
String b = "the godfather" 
String c = "The Godfather" 
String d = "thE GoDfaTher" 
System.out.println(a.equalsIgnoreCase(b)); // Outputs true 
System.out.println(a.equalsIgnoreCase(c)); // Outputs true 
System.out.println(a.equalsIgnoreCase(d)); // Outputs true 
System.out.println(a.equals(b)); // Outputs false 
0

要使字符串不區分大小寫,您應該使用toLowerCase()方法並使所有以小寫形式操作的字符串。你可以這樣做:

stringA.toLowerCase(); 

希望這會有所幫助,如果這不是你想要的,請隨時讓我知道! :D

相關問題