美文网首页
LinkedHashMap集合方法API实例演示

LinkedHashMap集合方法API实例演示

作者: TedBear_ | 来源:发表于2020-07-17 20:39 被阅读0次

LinkedHashMap

概述

  • 基于哈希表和链表实现的Map接口,具有可预测的迭代次序。 这种实现不同于HashMap,它维持于所有数据的运行双向链表。 此链接列表定义迭代排序,通常是将键插入到地图(插入顺序 )中的顺序
  • LinkedHashMap在操作时还保存了记录插入的顺序,用Iteraor遍历时先得到的肯定是先插入的,遍历时比HashMap慢,由于继承了HashMap所以有HashMap的全部特性。

API方法实例演示

clear

@Test
public void clear() {
    //clear: 清除所有键值对数据
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    linkedHashMap.put(1,"linkedHashMap");
    linkedHashMap.clear();
    //打印为空
    System.out.println("linkedHashMap = " + linkedHashMap);
}

containsValue

@Test
public void containsValue() {
    //containsValue: 判断是否包含指定的值,包含则返回true
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    //不包含这个字符串,返回为false
    System.out.println(linkedHashMap.containsValue("containsValue"));
}

entrySet

@Test
public void entrySet() {
    //返回一个Set接口,遍历map集合的数据
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    linkedHashMap.put(1,"entrySet");
    Set<Map.Entry<Integer, String>> entries = linkedHashMap.entrySet();
    System.out.println("linkedHashMap.entrySet() = " + entries);
}

forEach

@Test
public void forEach() {
    //forEach: 使用lambda表达式对集合进行操作
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    linkedHashMap.put(1,"forEach");
    //打印key值
    linkedHashMap.forEach((k,v) -> System.out.println(k));
}

get

@Test
public void get() {
    //get: 根据key获取value
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    linkedHashMap.put(1,"get");
    System.out.println("linkedHashMap.get(1) = " + linkedHashMap.get(1));
}

getOrDefault

@Test
public void getOrDefault() {
    //getOrDefault: 根据键获取集合的值,如果不存在此键则返回第二个参数的内容
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    linkedHashMap.put(1,"getOrDefault");
    //没有2号键。输出第二个参数的内容
    System.out.println(linkedHashMap.getOrDefault(2, "new Arg"));
}

keySet

@Test
public void keySet() {
    //keySet: 返回一个Set接口,遍历map集合的键值
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    linkedHashMap.put(1,"KeySet");
    System.out.println("linkedHashMap.keySet() = " + linkedHashMap.keySet());
}

replaceAll

@Test
public void replaceAll() {
    //replaceAll: 根据lambda表达式进行替换值
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    linkedHashMap.put(1,"replaceAll");
    linkedHashMap.replaceAll((k,v) -> "lam" + "bda");
    System.out.println("linkedHashMap = " + linkedHashMap);
}

clear

@Test
public void values() {
    //values: 返回一个Collection集合,用于显示所有数据
    LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    linkedHashMap.put(1,"values");
    Collection<String> values = linkedHashMap.values();
    System.out.println("values = " + values); 
}

相关文章

网友评论

      本文标题:LinkedHashMap集合方法API实例演示

      本文链接:https://www.haomeiwen.com/subject/ohpnhktx.html