zoukankan      html  css  js  c++  java
  • JAVA集合三:几种Set框架

    参考链接:

    HOW2J.CN

    HashSet简单讲解

    HashSet

    HashSet与C++STL中Set基本类似,具有的特点便是:

    1. 集合中元素不可重复
    2. 集合中元素顺序 ≠ 插入顺序
    常用方法 功能
    add 向集合中添加元素
    clear 清空集合
    remove 删除集合中指定元素
    contains 查看是否包含某个元素
    size 集合中元素的数量
    package blog;
    
    import java.util.HashSet;
    
    public class Main {
        public static void main(String[] args) {
        	HashSet<Integer> set = new HashSet<Integer>();
        	int[] data = {1,2,3,2,1,2,4,6,3,1,3,8,9,4,23,2};
        	//筛除data中的重复元素
        	for(int i = 0; i < data.length; i++) {
        		set.add(data[i]);
        	}
        	//遍历集合
        	for(Integer i : set) {
        		System.out.print(i+" ");
        	}
        }
    }
    

    运行结果如下(顺序并不是加入集合的顺序):

    1 2 3 4 6 23 8 9

    LinkedHashSet 与 TreeSet

    LinkedHashSet、TreeSet操作与HashSet基本无二,但是LinkedHashSet使得集合中的元素按照插入的顺序排列,而TreeSet使得集合中的元素按照大小顺序排列

    package blog;
    
    import java.util.HashSet;
    import java.util.LinkedHashSet;
    import java.util.TreeSet;
    
    public class Main {
        public static void main(String[] args) {
        	HashSet<Integer> set = new HashSet<Integer>();
        	LinkedHashSet<Integer> linkSet = new LinkedHashSet<Integer>();
        	TreeSet<Integer> treeSet = new TreeSet<Integer>();
        	
        	int[] data = {1,2,3,2,1,2,4,6,3,1,3,8,9,4,23,2,14,16,15};
        	//筛除data中的重复元素
        	for(int i = 0; i < data.length; i++) {
        		int temp = data[i];
        		set.add(temp);
        		linkSet.add(temp);
        		treeSet.add(temp);
        	}
        	//遍历集合
        	for(Integer i : set) {
        		System.out.print(i+" ");
        	}
        	System.out.println();
        	for(Integer i : linkSet) {
        		System.out.print(i+" ");
        	}
        	System.out.println();
        	for(Integer i : treeSet) {
        		System.out.print(i+" ");
        	}
        }
    }
    

    三个集合的遍历结果如下(从上到下依次是HashSet、LinkedSet、TreeSet):

    16 1 2 3 4 6 23 8 9 14 15
    1 2 3 4 6 8 9 23 14 16 15
    1 2 3 4 6 8 9 14 15 16 23

  • 相关阅读:
    5月16日 AJAX
    5月13日 Jquery基础
    5月13日 PDO封装
    会话控制练习
    文件上传
    会话控制
    注册审核
    练习
    三级联动
    AJAX之XML
  • 原文地址:https://www.cnblogs.com/theory/p/11884320.html
Copyright © 2011-2022 走看看