本文目录一览:
java里面的map是什么?
java为数据结构中的映射定义了一个接口java.util.Map
Map主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复。
java基础之三Collection和Map的区别
Collection和Map接口之间的主要区别在于:Collection中存储了一组对象,而Map存储关键字/值对。Collection接口,包含list和set子接口;继承Map的类有HashMap,HashTable。下面来给大家详细做一分析:
Collection:
1、Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。
一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。
Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection的“子接口”如List和Set。
2、所有实现Collection接口的类都必须提供两个标准的构造函数:无参数的构造函数和有一个Collection参数的构造函数。其中无参数的构造函数用于创建一个空的Collection;有一个Collection参数的构造函数用于创建一个新的Collection。
Map:
1、Map对象中,每一个关键字最多有一个关联的值。
2、不能包括两个相同的键,一个键最多能绑定一个值。null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。
3、当get()方法返回null值时,即可以表示Map中没有该键,也可以表示该键所对应的值为null。
因此,在Map中不能由get()方法来判断Map中是否存在某个键,而应该用containsKey()方法来判断。
4、Map接口提供3种集合的视图,Map的内容可以被当作一组key集合,一组value集合,或者一组key-value映射。
javamap的用法
javamap的用法如下;
1、void clear():删除Map中所有键值对。
2、boolean containsKey(Object key):查询Map中是否包含指定key,如果包含则返回true。
3、boolean containsValue(Object value):查询Map中是否包含指定value,如果包含则返回true。
4、Set entrySet():返回Map中所包含的键值对所组成的Set集合,每个集合元素都是Map.Entry对象(Entry是Map的内部类)。
5、Object get(Object key):返回指定key所对应的value,如Map中不包含key则返回null。
6、boolean isEmpty():查询Map是否为空,如果空则返回true。
7、Set keySet():返回该Map中所有key所组成的set集合。
8、Object put(Object key,Object value):添加一个键值对,如果已有一个相同的key值则新的键值对覆盖旧的键值对。
9、void putAll(Map m):将指定Map中的键值对复制到Map中。
10、Object remove(Object key):删除指定key所对应的键值对,返回可以所关联的value,如果key不存在,返回null。
11、int size():返回该Map里的键值对的个数。
12、Collection values():返回该Map里所有value组成的Collection。
Map中包含一个内部类:Entry。该类封装了一个键值对,它包含了三个方法:
1、Object getKey():返回该Entry里包含的key值。
2、Object getValeu():返回该Entry里包含的value值。
3、Object setValue(V value):设置该Entry里包含的value值,并返回新设置的value值。