java陣列的去重操作 非集合方法

2021-08-07 02:48:18 字數 740 閱讀 7089

陣列去重複,相對來說應該是集合的形式最為簡單,但是你有沒有想過,僅僅只用陣列如何實現呢?

下面我將會介紹這種方法以及利用arraylist來去除重複元素

1.思路

a首先我們要知道要知道有多少個重複的元素

b宣告乙個新的陣列,長度為舊陣列長度減去重複的元素數量

c比較新陣列元素和舊陣列元素 ,如果不等就存入新陣列中

private

static

void getchongfu(int arrayint2) }}

intindex=0; //新陣列的下標

newarray2=new

int[arrayint2.length-count]; //宣告新陣列

for(int k=0;kint temp=arrayint2[k];

boolean flag=false;

for(int l=0;lif(arrayint2[k]==newarray2[l])

}if(flag==false)

}system.out.println(arrays.tostring(newarray2));//列印陣列

}

2.利用arraylist來統計

a思路非常清晰,arraylist可理解為長度可變的陣列,

if(arrlist中contains不包含array[i])

很簡單就不給出詳細的**了

c 物件集合去重 C List集合去重操作注意點

今天除錯 時發現list的distinct方法在對引用型別操作時並沒有去重,後來查閱資料發現list去重操作物件集合時比較的是物件的乙個個引用位址,因為集合裡的物件都是乙個個單獨的例項,所以並不會把內容相同的元素去掉,要想真正去重還是要自己寫方法篩選,但是值型別集合的就可以直接操作,包括unoin,...

js陣列去重方法集合

第一種方法,新建乙個空陣列,將原來的陣列迴圈逐個與新陣列的成員做比較,如果新陣列沒有該元素就push進來 var arr a 1,1,1,2,4,4,b c a var newarr var len arr.length for i 0 i len i if flag console.log 111...

java中集合set去重使用

第一種,list,list用set去重時,無需重寫equals方法 listlist new arraylist for int i 0 i 10 i list.add 3 list.add 5 for int m 0 m list.size m setset new hashset for int...