java陣列的去重操作(非集合方法)
阿新 • • 發佈:2019-02-14
陣列去重複,相對來說應該是集合的形式最為簡單,但是你有沒有想過,僅僅只用陣列如何實現呢?
下面我將會介紹這種方法以及利用Arraylist來去除重複元素
1.思路
a首先我們要知道要知道有多少個重複的元素
b宣告一個新的陣列,長度為舊陣列長度減去重複的元素數量
c比較新陣列元素和舊陣列元素 ,如果不等就存入新陣列中
private static void getChongFu(int[] arrayInt2) {
int count=0;//統計重複元素數量
for(int i=0;i<arrayInt2.length-1;i++)
{
for (int j=i+1;j<arrayInt2.length;j++)
{
if(arrayInt2[i]==arrayInt2[j])
{
count++;
break;
}
}
}
int index=0; //新陣列的下標
newarray2=new int[arrayInt2.length-count]; //宣告新陣列
for (int k=0;k<arrayInt2.length;k++)
{
int temp=arrayInt2[k];
boolean flag=false;
for(int l=0;l<newarray2.length;l++)
{
if(arrayInt2[k]==newarray2[l])
{
flag=true;
break;
}
}
if (flag==false)
{
newarray2[index++]=temp; //向新陣列中放入不重複的元素
}
}
System.out.println(Arrays.toString(newarray2));//列印陣列
}
2.利用ArrayList來統計
a思路非常清晰,ArrayList可理解為長度可變的陣列,
if(arrlist中contains不包含array[i])
{
list.add(array[i])
}
很簡單就不給出詳細的程式碼了