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