java映射Map
来源:互联网 发布:巨峰科技有限公司软件 编辑:程序博客网 时间:2024/06/16 14:43
映射
Map用于存储一个由关键字(key)和它们的值(value)组成的条目集合。Map把关键字映射到相应的值,关键字必须是独一无二的,但是不同的关键字也可以对应相同的值。因此,值不需要独一无二。
HashMap中的关键字是无序的,TreeMap中的关键字是有序的。
Map可以作为一个序偶(pair)的Set实例来实现,它的比较器或者equals/hashCode的实现仅仅涉及关键字。Map接口不是扩展自Collection,它是自己独立存在的。
下面是一个TreeMap的使用实例:
package chapter02;import java.util.Collection;import java.util.Iterator;import java.util.Map;import java.util.Set;import java.util.TreeMap;public class MapTest {public static void main(String[] args) {// TODO Auto-generated method stub//创建一个TreeMap Map<String,Integer> date = new TreeMap<String,Integer>(); //添加键值对 date.put("Monday", 1); date.put("Tuesday", 2); date.put("Wednesday", 3); date.put("Thursday", 4); date.put("Friday", 5); date.put("Saturday", 6); date.put("Sunday", 7); System.out.println("date.get(\"Monday\"):" + date.get("Monday")); System.out.println("\nThe map is: "); //打印输出TreeMap printMap("date", date); System.out.println("\nThe keys are: "); //得到键的集合 Set<String> keys = date.keySet(); //打印输出键 printStringCollection(keys); System.out.println("\nThe values are: "); //得到值的集合 Collection<Integer> values = date.values(); //打印输出值 printIntCollection(values); //删除特定的键值对 date.remove("Tuesday"); //或 /*keys.remove("Tuesday"); values.remove(2);*/ //打印输出删除操作完成后的TreeMap System.out.println(); System.out.println("After Tuesday and 2 unlisted are removed."); System.out.println("The map is: "); printMap("date", date); } /** * 打印输出键 * @param keys */private static void printStringCollection(Set<String> keys) {// TODO Auto-generated method stubIterator<String> itr = keys.iterator();while(itr.hasNext()){System.out.print(itr.next() + " ");}} /** * 打印输出值 * @param values */private static void printIntCollection(Collection<Integer> values) {// TODO Auto-generated method stubIterator<Integer> itr = values.iterator();while(itr.hasNext()){System.out.print(itr.next() + " ");}System.out.println();} /** * 打印输出TreeMap * @param string * @param date */private static <KeyType, ValueType> void printMap(String string, Map<KeyType, ValueType> date) {// TODO Auto-generated method stubSystem.out.println(string + ":");Set<Map.Entry<KeyType, ValueType>> entries = date.entrySet();for(Map.Entry<KeyType, ValueType> thisPair : entries){System.out.print(thisPair.getKey() + ":");System.out.print(thisPair.getValue() + "\n");}}}
运行结果:
/************************************************************************/
date.get("Monday"):1The map is:
date:
Friday:5
Monday:1
Saturday:6
Sunday:7
Thursday:4
Tuesday:2
Wednesday:3
The keys are:
Friday Monday Saturday Sunday Thursday Tuesday Wednesday
The values are:
5 1 6 7 4 2 3
After Tuesday and 2 unlisted are removed.
The map is:
date:
Friday:5
Monday:1
Saturday:6
Sunday:7
Thursday:4
Wednesday:3
/************************************************************************/
0 0
- java映射Map
- java map映射
- JAVA-MAP映射
- java -- Map映射接口
- java基础--映射表Map
- Java集合(四):Map映射
- Java Map-Reduce(映射-归总)
- Java集合(四):Map映射
- java中映射关系Map
- Java映射总结之Map整体框架
- 黑马程序员---Java中的映射Map
- [疯狂Java]NIO:Channel的map映射
- java集合 映射使用(Set,List,Map)
- java集合框架之Map映射
- 映射map
- Map----映射
- map 映射
- map映射
- ubuntu16.04 ftp 连接 提示 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
- UNIX网络编程笔记 第十一章 名字与地址转换
- Android动画之视图动画
- 馒头,不!月饼引起的惨案
- 类的抽象和封装
- java映射Map
- ARP欺骗种类
- JAVA温习课堂7
- ThinkPHP3.1.3建立前后端项目
- vs 设置dll、lib库的输出路径
- this应用
- 阿里开源dubbo+zookeeper配置详解
- android studio中选择器怎么创建
- 传统数据挖掘技术小结