ArrayList刪除集合中某一屬性相同的元素方法(推薦)
如果想要集合中的元素不會有重復(fù),那么推薦使用hashSet,如下:
// list是有重復(fù)元素的ArrayList HashSet hSet = new HashSet(list); list.clear(); list.addAll(hSet);
但是有時我們想刪除某一個重復(fù)屬性值(值相同)的某個元素,如下:
NetWork nw1 = new NetWork(); nw1.id = 1; nw1.destip = "192.168.1.3"; NetWork nw2 = new NetWork(); nw2.id = 2; nw2.destip = "192.168.1.5"; NetWork nw3 = new NetWork(); nw3.id = 3; nw3.destip = "192.168.1.3"; NetWork nw4 = new NetWork(); nw4.id = 4; nw4.destip = "192.168.1.4"; NetWork nw5 = new NetWork(); nw5.id = 5; nw5.destip = "192.168.1.3"; mList.add(nw1); mList.add(nw2); mList.add(nw3); mList.add(nw4); mList.add(nw5);
明顯nw1、nw3、nw5中的ip值都一樣,我們只需要一個就足夠了,那么用ArrayList該如何循環(huán)遍歷刪除自身的元素值呢?
for (int i = 0; i < mList.size()-1; i++) {
for (int j = mList.size()-1; j > i; j--) {
if (mList.get(j).destip.equals(mList.get(i).destip)) {
mList.remove(j);
}
}
}
兩個for循環(huán)足矣,記住最好從尾部開始逐一比較,這樣一旦某一個元素符號要求,需要delete,能保證刪除尾部之上的,不會造成循環(huán)錯亂。
以上就是小編為大家?guī)淼腁rrayList刪除集合中某一屬性相同的元素方法(推薦)的全部內(nèi)容了,希望對大家有所幫助,多多支持腳本之家~
相關(guān)文章
SpringBoot?實現(xiàn)動態(tài)添加定時任務(wù)功能
這篇文章主要介紹了SpringBoot?動態(tài)添加定時任務(wù),本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-02-02
Rxjava+Retrofit+MVP實現(xiàn)購物車功能
這篇文章主要為大家詳細(xì)介紹了Rxjava+Retrofit+MVP實現(xiàn)購物車功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-05-05
SpringMVC五大組件與執(zhí)行原理分析總結(jié)
這篇文章主要介紹了SpringMVC五大組件與執(zhí)行原理分析總結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-01-01
詳解大數(shù)據(jù)處理引擎Flink內(nèi)存管理
Flink是jvm之上的大數(shù)據(jù)處理引擎,jvm存在java對象存儲密度低、full gc時消耗性能,gc存在stw的問題,同時omm時會影響穩(wěn)定性。針對頻繁序列化和反序列化問題flink使用堆內(nèi)堆外內(nèi)存可以直接在一些場景下操作二進(jìn)制數(shù)據(jù),減少序列化反序列化消耗。本文帶你詳細(xì)理解其原理。2021-05-05
Java源碼解析CopyOnWriteArrayList的講解
今天小編就為大家分享一篇關(guān)于Java源碼解析CopyOnWriteArrayList的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01

