文章詳情頁
Java中List的contains方法為什么不能實現二維數組中的去重?
瀏覽:134日期: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. docker - 各位電腦上有多少個容器啊?容器一多,自己都搞混了,咋辦呢?2. android studio總是在processes running好久3. MySQL數據庫中文亂碼的原因4. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””5. macos - mac下docker如何設置代理6. docker不顯示端口映射呢?7. java - 請問在main方法中寫成對象名.屬性()并賦值,與直接參參數賦值輸錯誤是什么原因?8. css - C#與java開發Windows程序哪個好?9. docker gitlab 如何git clone?10. docker-compose 為何找不到配置文件?
排行榜
