Java HashMap的一些常用函数
目录
- Java HashMap的一些常用函数
- 创建映射关系
- 将键值送入映射---put(k,v)函数
- 得到键的值---get(k)函数
- map的长度---map()函数
- 判断map是否为空---isEmpty()函数
- 判断映射中是否有某个键(就是有没有k为几的数)---containsKey(k)函数
- 判断映射中是否有某个值--- containsValue(v)函数
- 新建一个映射关系map1
- 将map1中所有键值送入map中(从指定映射中将所有映射关系复制到此映射中)---putAll()函数
- 移除映射中的键值---remove(k)函数
- 只返回键,不输出值---keySet()函数
- 只返回值,不输出键---values()函数
- 判断两个映射是否相等---equals()函数
- q清除一个映射---clear()函数
- 总代码
上图是JDK中函数的描述,我这JDK是1.6.0版本,可能落伍了
创建映射关系
输入
Map<Integer,String> map=new HashMap<>();
//Map<key,value> 相当于key是键(地址),value是值(地址里的值)
将键值送入映射—put(k,v)函数
输入
map.put(1,"one");
//将键为1,值为one送入hashMap
map.put(2,"two");
map.put(3,"three");
输出
{1=one, 2=two, 3=three}
得到键的值—get(k)函数
输入
System.out.println(map.get(2));
//得到键为2的值
输出
two
map的长度—map()函数
输入
System.out.println(map.size());
//map的长度
输出
3
判断map是否为空—isEmpty()函数
输入
System.out.println(map.isEmpty());
输出
false
判断映射中是否有某个键(就是有没有k为几的数)—containsKey(k)函数
输入
System.out.println(map.containsKey(3));
//判断是否有键为3,若有,返回true
输出
true
判断映射中是否有某个值— containsValue(v)函数
输入
System.out.println(map.containsValue("three"));
//判断是否有value值为three,若有,返回true
输出
true
新建一个映射关系map1
输入
Map<Integer, String> map1 = new HashMap<>();
map1.put(4,"four");
map1.put(5,"five");
输出
{4=four, 5=five}
将map1中所有键值送入map中(从指定映射中将所有映射关系复制到此映射中)—putAll()函数
输入
map.putAll(map1);
//将map1中所有键值送入map中
System.out.println(map);
输出
{1=one, 2=two, 3=three, 4=four, 5=five}
移除映射中的键值—remove(k)函数
输入
map.remove(2);
//如果存在一个键的映射关系,则将其从此映射中移除(相当于 移除键为2的值)
System.out.println(map);
输出
{1=one, 3=three, 4=four, 5=five}
只返回键,不输出值—keySet()函数
输入
System.out.println(map.keySet());
//返回所有键(就是把上面的Integer的值显示出来,String不显示)
输出
[1, 3, 4, 5]
只返回值,不输出键—values()函数
输入
System.out.println(map.values());
//返回所有值
输出
[one, three, four, five]
判断两个映射是否相等—equals()函数
输入
Map<Integer, String> map2 = new HashMap<>();
map2.put(4,"four");
map2.put(5,"five");
// map2.put(6,"five");
/*要是吧key为6放出来,那么输出就是false*/
输出
true
q清除一个映射—clear()函数
输入
map.clear();
//清除所有映射(就是清除所有键值的意思)
System.out.println(map);
输出
{}
总代码
输入
public static void main(String[] args) {
Map<Integer,String> map=new HashMap<>();
//Map<key,value> 相当于key是键(地址),value是值(地址里的值)
map.put(1,"one");
//将键为1,值为one送入hashMap
map.put(2,"two");
map.put(3,"three");
System.out.println(map);
System.out.println(map.get(2));
//得到键为2的值
System.out.println(map.size());
//map的长度
System.out.println(map.isEmpty());
//判断是否为空
System.out.println(map.containsKey(3));
//判断是否有键为3,若有,返回true
System.out.println(map.containsValue("three"));
//判断是否有value值为three,若有,返回true
Map<Integer, String> map1 = new HashMap<>();
map1.put(4,"four");
map1.put(5,"five");
System.out.println(map1);
map.putAll(map1);
//将map1中所有键值送入map中
System.out.println(map);
System.out.println(map.entrySet());
//返回此映射中包含的映射关系的 Set 视图。(相当于返回Map,和System.out.println(map);一个意思)
map.remove(2);
//如果存在一个键的映射关系,则将其从此映射中移除(相当于 移除键为2的值)
System.out.println(map);
System.out.println(map.keySet());
//返回所有键(就是把上面的Integer的值显示出来,String不显示)
Map<Integer, String> map2 = new HashMap<>();
map2.put(4,"four");
map2.put(5,"five");
// map2.put(6,"five");
System.out.println(map1.equals(map2));
// 比较指定的对象与此映射是否相等。(就是判断两个映射是否完全相同,是就返回true)
map.clear();
//清除所有映射(就是清除所有键值的意思)
System.out.println(map);
输出
{1=one, 2=two, 3=three}
two
3
false
true
true
{4=four, 5=five}
{1=one, 2=two, 3=three, 4=four, 5=five}
[1=one, 2=two, 3=three, 4=four, 5=five]
{1=one, 3=three, 4=four, 5=five}
[1, 3, 4, 5]
true
{}
PS:这些函数和ArrayList中拥有的函数很相似,有兴趣可以看看另一篇关于动态数组ArrayList的文章
链接: Java中ArrayList(动态数组)常用的一些函数.