Java笔记4 JavaAPI<3>Map、Map-keySet、Map.entry
来源:互联网 发布:顶新影音 mac 编辑:程序博客网 时间:2024/06/05 15:02
------- android培训、java培训、期待与您交流! ----------
16天-01-集合(Map概述)
l Map集合:该集合存储键值对,一对一往里存,而且要保证键的唯一性。
1) 添加
put(K key,Vvalue)
putAll(Map<?extends K,? extends V> m)
2) 删除
clear()
remove(Objectobj)
3) 判断
containsValue(Objectobj)
containsKey(Objectkey)
isEmpty()
4) 获取
get(Object key)
size()
values()
16天-02-集合(Map子类对象特点)
l Map
|--HashTable:底层是哈希表数据表结构,不可以存入null键null值,该集合是线程同步的。jdk1.0效率低。
|--HashMap:底层是哈希表数据结构,允许使用null键null值,该集合不同步。jdk1.2效率高。
|--TreeMap:底层是二叉树数据结构。线程不同步,可以用于给map集合中的键进行排序。
l 其实和Set很像。
其实,Set底层就是使用Map集合。
l 注意,在使用map时,当使用put方法存键值对的时候,新key和key相同,新的value会覆盖掉旧value。
举例:
Map<String,String>map = new HashMap<String,String>();
map.put("a01", "123");
map.put("a01","234");
map.put("a02","234");
map.put(null,"234");
map.put("a03",null);
map.put(null,null);
Collection<String>coll = new map.values();
System.out.println(coll);
System.out.println(map);
打印结果:
[null, 234, 234, null]
{null=null, a01=234, a02=234, a03=null}
16天-04-集合(Map-keySet)
l Map集合的两种取出方式:
1) keyset:将map中的所有键存入到Set集合。因为set具备迭代器。所有可以迭代方式取出所有键,再根据get方法,获取每个键对应的值。
Map的取出原理,将Map集合转换为Set集合,再通过迭代器取出。
示例:
class Demo{
publicstatic void main(String[] args){
Map<String,String> map = newHashMap<String,String>();
map.put(“01”,”zhangsan01”);
map.put(“02”,”zhangsan02”);
Set<String> keyset = map.keySet();
Iterator<String> it = keyset.iterator();
while(ir.hashNext()){
String key = it.next();
String value =map.get(key);
System.out.println(“key:”+key+”,value”+value);
}
}
}
2) Set<Map.entry<k,v>>entrySet:将map集合中的映射关系存入到了set集合中,而这个关系的数据类型就是:map.Entry。
示例:
Set<Map.Entry<String,String>>entrySet = map.entrySet();
Iterator<Map.Entry<String,String>>it = entrySet.iterator();
while(it.hasNext()){
Map.Entry<String,String>me = it.next();
Stringkey = me.getKey();
Stringvalue = me.getValue();
System.out.println(key+”:”+value);
}
l Map.entry其实Entry也是一个接口,它是Map接口中的一个内部接口。
interface Map{
publicstatic interface Entry{
public abstractObject getKey();
public abstractObject getValue();
}
}
class HashMap implements Map{
classHahs implements Map.Entry{
public Object getKey(){
}
public Object getValue(){
}
}
}
------- android培训、java培训、期待与您交流! ----------
- Java笔记4 JavaAPI<3>Map、Map-keySet、Map.entry
- Map.Entry和Map中的map.keySet()、map.entrySet()详解
- java Map Map.Entry
- Java Map --keyset
- Java学习笔记(九):Map.keyset()
- Map.keyset()
- Map.keyset()
- map.keySet()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- 集合框架__【Map集合】【keySet】【entrySet】【Map.Entry】
- Java集合框架-3.【泛型】【Map集合】【keySet】【entrySet】【Map.Entry】
- 【资讯类】高朋:Esri支持国产卫星 卫星数据中心大有所为
- DM365 dvsdk_2_10_01_18开发环境搭建
- 最简单的C#快速入门教程
- <context-param>与<init-param>的区别与作用
- java 二分法去数据
- Java笔记4 JavaAPI<3>Map、Map-keySet、Map.entry
- android matrix camera处理图片绕X轴Y轴翻转(类似3D效果)
- java SQL连接执行类
- 浅谈Android五大布局(二)——RelativeLayout和TableLayout
- Java操作Microsoft Word之jacob
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- 地图 按钮
- 强大的Win7计算器
- c++多线程同步