首页 > 代码库 > 在一个数组中清除该数组的重复元素,数组不准浪费长度。

在一个数组中清除该数组的重复元素,数组不准浪费长度。

思路:

利用两个for循环,第一for循环,目的是拿出每一个数,第二个for循环,把第一次循环的数据和其他数据比较,看有没有重复的数。

当有重复的数给他重新赋值给其赋值为-1,这样一次循环比较久可以找出相同的数,打印的时候,值是-1的,就不打印。

看下代码演示:

 

 1 public class Demo {
 2 
 3     
 4     public static void main(String[] args) {
 5         int[] arr = {11,2,3,11,2,10,4,3,0,0,0};
 6         System.out.println("整理先");
 7         for(int i = 0; i<arr.length;i++){
 8             System.out.print(arr[i]+" ");
 9         }
10         //第一次循环比较数组中的每个数
11         for(int i = 0 ;i<arr.length-1;i++){
12             //第二次循环,把上面要循环的数据,和其他数据相比
13             for(int j = i+1;j<arr.length;j++){
14                 if(arr[i]==arr[j]){//相等的数据就赋值为0
15                     arr[j] = -1;
16                 }
17             }
18             
19         }
20      System.out.println();
21      System.out.println("整理后");
22      for(int i = 0 ; i<arr.length;i++){
23          if(arr[i]!=-1){//整理过后,被重新赋值为-1的就不打印出来
24          System.out.print(arr[i]+" ");
25          }
26      }
27 
28     }
29 
30 }

 

在一个数组中清除该数组的重复元素,数组不准浪费长度。