java数组去重方法

在Java中,有多种方法可以实现数组去重。以下是几种常用的方法:

1. 使用Set:可以使用Set集合来去除重复元素。Set集合中不允许重复元素的存在,所以将数组中的元素添加到Set集合中,自动去除重复元素。

int[] arr = {1, 2, 3, 3, 4, 5, 5};
Set set = new HashSet<>();
for (int num : arr) {
    set.add(num);
}
// 遍历Set集合即可得到去重后的数组
int[] result = new int[set.size()];
int index = 0;
for (int num : set) {
    result[index++] = num;
}

2. 使用List:将数组中的元素添加到List集合中,再使用List的distinct()方法或者使用Stream的distinct()方法进行去重。

int[] arr = {1, 2, 3, 3, 4, 5, 5};
List list = new ArrayList<>();
for (int num : arr) {
    list.add(num);
}
// 使用distinct()方法进行去重
List distinctList = list.stream().distinct().collect(Collectors.toList());
// 将List集合转换为数组
int[] result = new int[distinctList.size()];
for (int i = 0; i < distinctList.size(); i++) {
    result[i] = distinctList.get(i);
}

3. 使用数组排序:先对数组进行排序,然后遍历数组过滤重复元素。

int[] arr = {1, 2, 3, 3, 4, 5, 5};
Arrays.sort(arr);
int n = arr.length;
int count = 0;
for (int i = 0; i < n; i++) {
    if (i == 0 || arr[i] != arr[i - 1]) {
        count++;
    }
}
int[] result = new int[count];
int index = 0;
for (int i = 0; i < n; i++) {
    if (i == 0 || arr[i] != arr[i - 1]) {
        result[index++] = arr[i];
    }
}

以上是几种常见的Java数组去重方法,选择适合你的场景和需求的方法进行使用。

版权申明:财旺号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 1790309299@qq.com 举报,一经查实,本站将立刻删除。

(0)
小二的头像小二

相关推荐

  • 获取字符串长度的方法

    获取字符串长度的方法可以使用以下几种方式: 1. 使用内置函数len():在大多数编程语言中,都有内置的函数len()来获取字符串的长度。它返回的是字符串中字符的数量(包括空格和特殊字符)。例如,在Python中可以使用len()函数获取字符串长度: str = “Hello World” length = len(str) print(length) # …

    2024年1月3日
    00
  • mysql导出csv文件命令

    MySQL导出CSV文件的命令是使用SELECT语句将数据查询到一个文件中,然后将文件保存为CSV格式。下面是使用MySQL命令行工具导出CSV文件的步骤: 1. 打开命令行或终端窗口,并登录到MySQL服务器。例如,使用以下命令登录: shell mysql -u -p 2. 进入要导出数据的数据库。例如,使用以下命令选择数据库: USE ; 3. 执行S…

    2023年11月17日
    00
  • 为什么python复制代码运行不了了

    Python代码复制运行不了的原因可能有以下几种: 1. 代码缩进错误:Python对代码的缩进非常敏感,如果复制的代码缩进格式不正确,就会导致代码无法运行。在复制代码之后,一定要检查缩进是否正确。 2. 引入模块错误:复制的代码中可能引用了某个模块或库,但是没有正确安装或导入这些模块,导致代码无法运行。需要确保代码中引用的所有模块都正确导入。 3. 语法错…

    2024年3月2日
    00
  • java中有哪些语句

    在Java中,常见的语句包括: 1. 声明语句:用于声明变量和常量,例如:int a;、final int MAX_VALUE = 10;等。 2. 赋值语句:用于给变量赋值,例如:a = 5;。 3. 控制流语句:用于控制程序的流程,常见的控制流语句包括: – 条件语句:if语句、switch语句等,用于根据不同的条件执行不同的代码块。 &#8…

    2024年1月30日
    00
  • windows任务栏图标显示

    Windows 任务栏是操作系统中的一个重要组成部分,它位于屏幕底部并提供了快捷方式和系统状态信息。 任务栏中的图标显示可以分为三个部分: 1. 程序图标:任务栏上会显示已经打开的程序的图标。当你打开一个程序时,它的图标会出现在任务栏上。你可以点击图标来最小化或恢复窗口,并在需要时快速访问已打开的程序。 2. 通知区域图标:通知区域位于任务栏的右侧,用于显示…

    2024年1月28日
    00

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注