`

去除数组中的重复元素(引用类库hashset)

    博客分类:
  • JAVA
 
阅读更多

今天遇到这样一个问题,就是需要去除数组中的重复元素,到网上查了下,用hashset觉得很方便:

package com.example;

import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
/** This class is a Java tutorial for detect and remove duplicate array elements
*/
public class Test{

 /** This method shows how to check and delete duplicate array elements
*/

    public static void main(String[] args) {

        String[] str = new String[10];

  

        //Initializing the array with duplicate elements

        for(int i=0;i<10;i++){

            str[i] = "str";

        }

  

        //remove duplicates here

        Set s = new HashSet(Arrays.asList(str));

  

        System.out.println(s);

    }

}

 不过这样不一定能保存原来顺序了,如果要保持得用LinkedHashSet,最后toArray()就可以了

分享到:
评论

相关推荐

    类库、字符串、集合、文件流

    在IT行业中,类库、字符串、集合和文件流是编程中的核心概念,尤其是在使用ASP.NET进行系统设计时。下面将详细介绍这些知识点。 首先,我们来看看类库。类库是一组预定义的类和方法的集合,它们提供了各种功能,...

    java集合框架

    - `size()`:返回集合中元素的数量。 - `remove(Object obj)`:移除集合中的指定元素。 - `clear()`:清空集合。 - `contains(Object obj)`:判断集合中是否包含某个元素。 - `isEmpty()`:判断集合是否为空。 - `...

    Java的一些工具类

    4. **HashMap和HashSet**: 这些是`java.util`包中实现Map和Set接口的常见工具类,提供了键值对存储和不重复元素存储的功能。它们的性能和内存占用都经过优化,适用于大多数情况。 5. **Random**: 用于生成随机数,...

    1剑盛二面准备试题.txt1剑盛二面准备试题.txt

    23. **HashMap的实现原理**:HashMap基于哈希表实现,当对HashMap进行put操作时,首先根据key的hashCode计算其在bucket数组中的位置,如果该位置上已有元素,则进行equals比较,如果相等则替换其value,否则以链表的...

    java常用API举例

    HashSet不允许重复元素,而LinkedHashSet保持元素的插入顺序。例如: ```java HashSet&lt;String&gt; set = new HashSet(); set.add("Element1"); set.add("Element2"); if (!set.add("Element1")) { System.out.println...

    Java基础自学笔记,全部的基础和心得

    主要包括List(有序且可重复的元素,如ArrayList和LinkedList)、Set(无序且不允许重复,如HashSet和TreeSet)和Map(键值对,如HashMap和TreeMap)。 六、输入输出流 Java的I/O流处理提供了一套完善的读写机制,...

    java学习笔记

    1. **List**:有序集合,可以包含重复元素。主要实现包括ArrayList(基于动态数组实现)和LinkedList(基于链表实现)。 2. **Set**:不允许重复元素的集合。主要实现包括HashSet(基于哈希表实现)、TreeSet(基于...

    运用X-mind线性思维对JAVA知识进行归纳

    4. **数组与集合**:数组是固定大小的元素序列,而集合框架(如ArrayList、LinkedList、HashSet、HashMap等)提供了更灵活的数据存储和操作方式。 5. **字符串处理**:Java中的String类是不可变的,提供了丰富的...

    Java常用函数速查表

    3. **ArrayList类**:ArrayList是基于动态数组实现的集合,提供了`add()`添加元素,`remove()`删除元素,`get(index)`获取指定位置元素,`set(index, element)`替换指定位置元素,以及`size()`返回元素数量等方法。...

    Java SE 总结 文档

    Java SE是Java Standard Edition的缩写,它定义了Java语言的核心库,包括Java程序运行环境、Java类库、Java虚拟机(JVM)等。Java SE是Java开发的基础,对于初学者来说,它是学习Java编程的第一步,同时也是有一定...

    java操作工具类

    1. **字符串工具类**: Java中可能会提供一系列处理字符串的方法,如字符串拼接、格式化、大小写转换、去除空白字符、查找替换、分割与合并等。例如,`StringUtils`类可能会包含这些功能,它简化了对`String`对象的...

    Java基础教程-初学者快速上手

    Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能和丰富的类库而闻名。本教程旨在为初学者提供一个全面的Java基础知识学习路径,帮助快速掌握编程技能。 1. **Java简介** Java是由Sun Microsystems...

    Java

    7. **集合框架**:Java集合框架包括List(有序、可重复元素,如ArrayList、LinkedList), Set(无序、不重复元素,如HashSet、TreeSet)和Map(键值对,如HashMap、TreeMap)。这些接口和类提供了丰富的操作方法。 ...

    java教程

    4. **数组与集合框架**:掌握一维和多维数组,以及Java集合框架(如ArrayList、LinkedList、HashSet、HashMap等)的使用。 5. **异常处理**:学习Java的异常处理机制,包括try-catch-finally语句块和自定义异常。 ...

    java快速详细基础教程

    3. 数据类型:Java分为基本数据类型(如整型、浮点型、字符型、布尔型)和引用数据类型(如类、接口、数组)。 4. 控制结构:包括条件语句(if/else,switch/case)、循环语句(for,while,do/while)和跳转语句...

    Java面试题总结实用知识库分享

    - **集合与泛型**:ArrayList、LinkedList、HashSet、HashMap等是常用的集合类,泛型用于限制集合中元素的类型。 10. **IO与NIO** - **IO流**:Java的输入输出流模型,分为字节流和字符流,处理输入输出数据。 -...

    Java程序员笔试题

    - **字符串去重:** 使用哈希表(如HashSet)来存储遍历过程中遇到的字符,可以有效地去除重复字符,并保持字符顺序不变。 **3. 数据类型转换** - **包装类转基本类型:** 如 `Integer` 转 `int`,可以通过自动...

    Java个人笔记

    字符串比较时应使用`equals()`方法而不是`==`,因为`==`比较的是对象引用,而非内容。 2. **字符串常用方法**: - `charAt(i)`:返回指定索引处的字符。 - `equals(Object anObject)`:比较字符串内容是否相等。 ...

    java基础笔记

    3. **Java语法基础**:包括数据类型(基本类型如int、char,引用类型如类、接口、数组)、变量声明、运算符、流程控制(if、switch、for、while)、方法定义和调用。 4. **类与对象**:Java是面向对象的语言,一切...

    utils:精简版Java utils

    在实际应用中,正确地使用Utils类库可以极大地优化代码结构,减少代码冗余,并且提高代码的可维护性和可读性。但是,需要注意的是,过度依赖Utils类可能会导致代码过于分散,不利于理解和测试,因此合理使用和设计...

Global site tag (gtag.js) - Google Analytics