开发者社区> 问答> 正文

关于java中消除数组中的重复值的问题

public static void getLength(int[] arr){
int count=0;
int i;
for(i=0;i<arr.length-1;i++){
if(arr[i]==arr[i+1])
count++;
arr[i]=arr[i+1];

}
for(int x=0;x<arr.length-count-1;x++){
System.out.print(arr[x]+" ");
}
}

这串代码还是有问题,麻烦大家用简洁点的语言写一下。

展开
收起
蛮大人123 2016-06-07 15:26:45 1960 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪
    public class Demo1 {
    public static void main(String[] args) {
    int arr[] = { 1, 1, 2, 3, 2, 4, 1, 1, 1, 2, 3 };
    arr = test(arr);
    for (int i : arr) {
    System.out.print(i + " ");
    }
    }
    
    public static int[] test(int[] arr) {
        int len = arr.length;
        for (int i = 0; i < len; i++) {
            for (int j = i + 1; j < len; j++) {
                if (arr[i] == arr[j]) {
                    {
                        arr[j] = arr[len - 1];
                        len--;
                    }
                }
            }
        }
        int arr1[] = new int[len];
        for (int i = 0; i < len; i++) {
            arr1[i] = arr[i];
        }
        if (len == arr.length) {
            return arr1;
        }
        return test(arr1);
    }
    }
    2019-07-17 19:30:19
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载