设为首页 加入收藏

TOP

JAVA学习笔记--初识容器类库(三)
2017-10-12 11:22:48 】 浏览:8962
Tags:JAVA 学习 笔记 初识 容器
hSetInt); Set
<Integer> treeSetInt = new TreeSet<Integer>(); for(int i = 0;i < 100;i++) treeSetInt.add(rand.nextInt(20)); System.out.println(treeSetInt); } } Set Code

注:实际上,我在eclipse上运行上述代码,发现无论是HashSet还是TreeSet,输出的元素都是按自然顺序排列的,查阅资料后发现可能是JDK版本的原因,JDK8中HashMap的实现有了一些变化,这些新特性导致了HashSet输入整型数据时会按照自然顺序进行排列。

 

c)Queue:按照排队规则来确定对象产生的顺序(通常与它们被插入的顺序相同)

  Queue(队列)是一个典型的先进先出的容器,它有两个实现 LinkedList以及PriorityQueue。LinkedList提供了方法以支持队列的行为,并且实现了Queue接口;PriorityQueue(优先级队列)声明下一个弹出元素是最需要的元素(具有最高优先级)。

 

2)Map保存一组成对的“键值对”对象,允许使用键来查找值

  Map可用于将一个对象映射到其他对象上。Map接口提供三种collection视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的关系。映射顺序为迭代器在映射collection视图上返回其元素的顺序。它有两个实现:HashMap和TreeMap。

HashMap:

  基于哈希表的Map实现,此实现提供所有可选的映射操作,并允许使用null值和null键;不保证映射的顺序,特别是不保证该顺序恒久不变。

构造方法:

HashMap();                                      // 创建一个具有默认初始容量(16)和默认加载因子(0.75)的空的HashMap

HashMap(int initialCapacity);                // 创建一个指定初始容量和默认加载因子的空的HashMap

HashMap(int initialCapacity,float loadFactor);     // 创建一个指定初始容量和指定加载因子的空的HashMap

HashMap(Map<? extends K,? extends V> m);         // 创建一个映射关系与指定Map相同的新的HashMap

TreeMap:

  基于红黑树的Map实现,该映射根据其键的自然顺序进行排序,或根据创建映射时提供的Compartor进行排序,具体取决于使用的构造方法。

TreeMap();                          //使用键的自然顺序创建一个新的空的树映射

TreeMap(Compartor<? super K> compartor);      // 构造一个新的空的树映射,该映射根据给定比较器进行排序

TreeMap(Map<? extends K,? extends V> m);      // 构造一个与给定映射具有相同映射关系的新的树映射,该映射根据其键的自然顺序进行排序

TreeMap(SortedMap<K,? extends V> m);          // 构造一个与指定有序映射具有相同映射关系和相同排序顺序的新的树映射

下面用一个简单的例子简单介绍一下Map一些用法:

package com.tongye.holding;

import java.util.HashMap;
import java.util.Map;
import java.util.Random;

public class MapExample {
    public static void main(String[] args){
        Random rand = new Random(47);
        Map<Integer,Integer> mapInt = new HashMap<Integer,Integer>();    // 创建一个空的新的HashMap
        for(int i = 0; i < 10000; i++){
            Integer key = rand.nextInt(20);
            Integer value = mapInt.get(key);    // 返回该键所映射的值,如果该键还没有任何映射关系,则返回null
            mapInt.put(key, value == null? 1 : value + 1);    // 在此映射中关联指定值与指定键
        }
        System.out.println(mapInt);
    }
}
Map Code

 

首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇JAVA学习笔记--初识容器类库 下一篇线程池

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目