A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 轰天雷 中级黑马   /  2016-3-26 22:28  /  405 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

去除数组中的重复元素
比如原数组为int[] arr = {1,1,2,2,3,4,6,6};去重后为int[] arr = {1,2,3,4,6};
用自定义类(MyArrayList实质就是一个容器)去实现以上需求

1 个回复

正序浏览
/*
*我这个可以吗?
*/
public class MyArrayList {
        public static void main(String[] args) {
                int[] arr = { 1, 1, 2, 2, 3, 4, 6, 6 };
                int[] temp = new int[arr.length];
                int index = 0; // 定义一个计数,后面将定义为一个新数组的长度
                for (int i = 0; i < arr.length; i++) {
                        boolean flag = true;// 定义一个 boolean 来做判断
                        for (int j = 0; j < arr.length; j++) {
                                if (temp[j] == arr[i]) {// 用arr[i] == temp[j]每一项 如果有相同的
                                                                                // 则把 flag=false
                                        flag = false;
                                        break;
                                }
                        }
                        if (flag) {        //如果为true 则为 temp  赋值,index 自加一次;
                                temp[index] = arr[i];
                                index++;
                        }

                        System.out.println();

                }
                int[] sum = new int[index];
                for (int i = 0; i < sum.length; i++) {
                        sum[i] = temp[i];//给sum每项赋值
                }
                for (int i = 0; i < sum.length; i++) {
                        System.out.print(sum[i] + "\t");
                }
        }
}


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马