Taotoken 审计日志功能在满足企业合规与安全审计要求中的应用价值
2026/5/5 21:34:30
// ① 传统 Map<String, Integer> map = new HashMap<>(); // ② 不可变(JDK 9+) Map<String, Integer> map = Map.of("a", 1, "b", 2); // ③ 函数式(JDK 8+) Map<String, Integer> map = Stream.of(new Object[][]{{"a", 1}, {"b", 2}}) .collect(Collectors.toMap(o -> (String) o[0], o -> (Integer) o[1])); // ④ Guava 可变 Map<String, Integer> map = Maps.newHashMap(); // ⑤ Guava 不可变 Map<String, Integer> map = ImmutableMap.of("a", 1, "b", 2);map.put("k", 1); // 存 map.get("k"); // 取 map.getOrDefault("k", 0); // 防 NPE map.remove("k"); // 删 map.containsKey("k"); // 判断 map.size(); // 大小// ① entrySet(最快) for (Map.Entry<String, Integer> e : map.entrySet()) { System.out.println(e.getKey() + "=" + e.getValue()); } // ② Java 8 Lambda map.forEach((k, v) -> System.out.println(k + "=" + v)); // ③ keySet for (String k : map.keySet()) { System.out.println(k + "=" + map.get(k)); } // ④ Stream map.entrySet().stream() .filter(e -> e.getValue() > 10) .forEach(e -> System.out.println(e.getKey()));// 计数器:单词出现次数 map.merge(word, 1, Integer::sum); // 累加:key 对应的值 + delta map.compute(key, (k, v) -> v == null ? delta : v + delta);// ① 全表锁(慢) Map<String, Integer> map = new Hashtable<>(); // ② 分段锁(快) Map<String, Integer> map = new ConcurrentHashMap<>(); // ③ 不可变(无锁) Map<String, Integer> map = ImmutableMap.of("a", 1);// ① 插入顺序 Map<String, Integer> map = new LinkedHashMap<>(); // ② 访问顺序(LRU) Map<String, Integer> map = new LinkedHashMap<>(16, 0.75f, true); // ③ 排序顺序 Map<String, Integer> map = new TreeMap<>(); // 自然序 Map<String, Integer> map = new TreeMap<>(Comparator.reverseOrder()); // 倒序String name = Optional.ofNullable(map.get("k")) .map(String::valueOf) .orElse("");Map<String, Function<Integer, Integer>> funcMap = Map.of( "square", x -> x * x, "cube", x -> x * x * x ); int result = funcMap.getOrDefault("square", x -> x).apply(5); // 25“HashMap 日常,LinkedHashMap 顺序,TreeMap 排序,ConcurrentHashMap 并发,ImmutableMap 只读,merge 计数,Optional 防空!”