文章詳情頁
Java中List的contains方法為什么不能實現二維數組中的去重?
瀏覽:193日期:2024-02-07 16:53:24
問題描述
請教為什么以下代碼會返回false?
List list = new ArrayList();int[][] arr = {{-1, -1, 2}, {-1, 0, 1}};list.add(arr[0]);list.add(arr[1]);int[] temp = {-1, 0, 1};return list.contains(temp);
當list中的元素是數組時,如何實現去重?謝謝回答
問題解答
回答1:內部是用 equals 的
public boolean contains(Object o) {return indexOf(o) >= 0; }public int indexOf(Object o) {if (o == null) { for (int i = 0; i < size; i++)if (elementData[i]==null) return i;} else { for (int i = 0; i < size; i++)if (o.equals(elementData[i])) return i;}return -1; }
可以改寫 比較所有元素的吧
標簽:
java
相關文章:
1. 百度地圖 - Android app中準備接入地圖sdk,百度VS高德哪個好一點?2. mongoDB批量插入文檔時,運行下面代碼,用MongoVUE查看數據庫,mongo庫中只存在一個文檔?不應該是20個嗎?3. 百度地圖api - Android百度地圖SDK,MapView上層按鈕可見卻不可觸,怎么解決?4. HTML5禁止img預覽該怎么解決?5. javascript - vue 父子組件傳遞數據6. html5 - 需要做一個移動端微信頁面的小游戲,腦子里比較空希望有大神小神稍微指點指點。7. android-studio - 用Android Studio開發基于百度位置服務的Android軟件中遇到jar中沒有主清單屬性的問題8. javascript - 關于圣杯布局的一點疑惑9. javascript - JS如何把回調閉包形參傳遞給外部環境的變量10. javascript - 如何將一個長為365的數組對象按月份切割成12組?
排行榜
