java 集合处理:

复制代码
// 1 数组转map
public static void main(String[] args) {
    String backendIdStr="[\"backend-mvj05upv7yc\",\"backend-mvj055qvric\",\"backend-mvj04hlutx4\"]";
    String[] backendIdList = JsonUtil.asObject(backendIdStr, String[].class);
    Stream<String> stream = Arrays.stream(backendIdList);
    Map<String, String> map = stream.collect(Collectors.toMap(key -> key, value -> value));
    System.out.println(11111);
}

// 2 List求差集

复制代码
public static void main(String[] args) {
        List<String> list1 = new ArrayList<String>();
        list1.add("A");
        list1.add("B");
        List<String> list2 = new ArrayList<String>();
        list2.add("B");
        list2.add("C");
        list1.removeAll(list2);
        System.out.println("交集:" + list1);//差集:[A]

}

// 3 List求交集

复制代码
public static void main(String[] args) {
        List<String> list1 = new ArrayList<String>();
        list1.add("A");
        list1.add("B");
        List<String> list2 = new ArrayList<String>();
        list2.add("B");
        list2.add("C");
        list1.retainAll(list2);
        System.out.println("交集:" + list1);//交集:[B]
    
}

// java 8 处理 :

public void test1(){

List list1=new ArrayList<>();

list1.add(1);

list1.add(2);

list1.add(3);

List list2=new ArrayList<>();

list2.add(3);

list2.add(4);

list2.add(5);

System.out.println("====求交集===");

List list=list1.stream().filter(t->list2.contains(t)).collect(Collectors.toList());

list.stream().forEach(System.out::println);

System.out.println("====求差集===");

list=list1.stream().filter(t-> !list2.contains(t)).collect(Collectors.toList());

list.stream().forEach(System.out::println);

System.out.println("====求并集===");

list.addAll(list1);

list.addAll(list2);

list=list.stream().distinct().collect(Collectors.toList());

list.stream().forEach(System.out::println);

}

相关推荐
Boilermaker19921 小时前
[Java 并发编程] Synchronized 锁升级
java·开发语言
Cherry的跨界思维1 小时前
28、AI测试环境搭建与全栈工具实战:从本地到云平台的完整指南
java·人工智能·vue3·ai测试·ai全栈·测试全栈·ai测试全栈
MM_MS1 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
꧁Q༒ོγ꧂1 小时前
LaTeX 语法入门指南
开发语言·latex
njsgcs2 小时前
ue python二次开发启动教程+ 导入fbx到指定文件夹
开发语言·python·unreal engine·ue
alonewolf_992 小时前
JDK17新特性全面解析:从语法革新到模块化革命
java·开发语言·jvm·jdk
一嘴一个橘子2 小时前
spring-aop 的 基础使用(啥是增强类、切点、切面)- 2
java
sheji34162 小时前
【开题答辩全过程】以 中医药文化科普系统为例,包含答辩的问题和答案
java
古城小栈2 小时前
Rust 迭代器产出的引用层数——分水岭
开发语言·rust
ghie90902 小时前
基于MATLAB的TLBO算法优化实现与改进
开发语言·算法·matlab