java 8 Lambda实现两个list的笛卡尔积

一:代码如下。package com.mszl.controller;

import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

import java.util.stream.Collectors;

public class Test11 {

public static void main(String[] args) {

List colorList = Arrays.asList("张三", "李四", "王五");

List sizeList = Arrays.asList("25岁", "40岁");

List descartesList = descartes(colorList, sizeList);

descartesList.forEach(System.out::println);

}

public static List descartes(List... lists) {

List tempList = new ArrayList<>();

for (List list : lists) {

if (tempList.isEmpty()) {

tempList = list;

} else {

tempList = tempList.stream().flatMap(item -> list.stream().map(item2 -> item + " " + item2)).collect(Collectors.toList());

}

}

return tempList;

}

}

执行结果:张三 25岁

张三 40岁

李四 25岁

李四 40岁

王五 25岁

王五 40岁

java 笛卡尔积_java 8 Lambda实现两个list的笛卡尔积相关推荐

  1. java 深克隆_Java实现深克隆的两种方式

    序列化和依次克隆各个可变的引用类型都可以实现深克隆,但是序列化的效率并不理想 下面是两种实现深克隆的实例,并且测试类对两种方法进行了对比: 1.重写clone方法使用父类中的clone()方法实现深克 ...

  2. Java变长数组笛卡尔积_Java 8中的流作为流的笛卡尔积(仅使用流)

    小编典典 在示例中传递流永远比传递列表更好: private static Stream cartesian(BinaryOperator aggregator, List... lists) { . ...

  3. websocket java 例子_java 实现websocket的两种方式实例详解

    目录 一.介绍 1.两种方式,一种使用tomcat的websocket实现,一种使用spring的websocket 2.tomcat的方式需要tomcat 7.x,JEE7的支持. 3.spring ...

  4. java下文_java实现文件下载的两种方式

    本文实例为大家分享了java实现文件下载的具体代码,供大家参考,具体内容如下 public HttpServletResponse download(String path, HttpServletR ...

  5. java 建模_Java设计模式菜鸟系列(两)建模与观察者模式的实现

    观察者(Observer)模式定义:在对象之间定义了一对多的依赖关系,这样一来.当一个对象改变状态时,依赖它的对象都会收到通知并自己主动跟新.Java已经提供了对观察者Observer模式的默认实现, ...

  6. java匿名内部类_java中匿名内部类的两种实现方式

    使用匿名内部类课使代码更加简洁.紧凑,模块化程度更高.内部类能够访问外部内的一切成员变量和方法,包括私有的,而实现接口或继承类做不到.然而这个不是我说的重点,我说的很简单,就是匿名内部类的两种实现方式 ...

  7. java lambda 实现_Java 8 Lambda实现原理分析

    PDF文档已上传Github 为了支持函数式编程,Java 8引入了Lambda表达式,那么在Java 8中到底是如何实现Lambda表达式的呢? Lambda表达式经过编译之后,到底会生成什么东西呢 ...

  8. java lambda 实现_Java 8 Lambda实现原理分析(转载)

    原文出处:http://www.cnblogs.com/WJ5888/p/4618465.html 为了支持函数式编程,Java 8引入了Lambda表达式,那么在Java 8中到底是如何实现Lamb ...

  9. java lambda表达式条件_Java 8 Lambda表达式一看就会

    匿名内部类的一个问题是:当一个匿名内部类的实现非常简单,比如说接口只有一个抽象函数,那么匿名内部类的语法有点笨拙且不清晰.我们经常会有传递一个函数作为参数给另一个函数的实际需求,比如当点击一个按钮时, ...

最新文章

  1. Blender+SP+UE5游戏艺术工作流程学习
  2. C++编程易范的错误
  3. 如何在签约之前搞定难缠的客户
  4. 扇区、磁盘块、页、页框、缓冲区之间的关系!
  5. 借助Redis完成延时任务
  6. 这项技术竟然一个字也不放过!
  7. 信息学奥赛一本通(1323:【例6.5】活动选择)
  8. 1 物料xxxxxx在仓库101里不存在
  9. 华为鸿蒙系统英语报纸_华为鸿蒙英文不是Hongmeng OS?余承东解释
  10. 计算几何常用算法及numpy仿真
  11. Page Cache与Page回写
  12. CAngle类 角度转换类 C++
  13. 放苹果(整数划分变形题 水)poj1664
  14. 怎么删除服务中的mysql服务
  15. linux用独显运行steam,修复在Linux系统上与Nvidia不兼容的Steam游戏
  16. 使用 C# 写脚本的优势和方法
  17. MK802与外部硬件设备的通讯
  18. java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11.XToolkit异常解决
  19. 7-3 拍7令三 (100 分)
  20. WKWebView 播放下载的本地mp4文件

热门文章

  1. sql in语句排序 INSTR函数排序用法 结果集list排序
  2. python小玩意——点菜单程序
  3. Clion Git安装配置
  4. git连接远程仓库(github)
  5. git更换远程仓库步骤
  6. 大数据设计方案V1.0
  7. Mysql关于procedure、function的详解
  8. 浅析YOLO目标检测算法AI安全帽识别技术及场景应用
  9. 阿里巴巴开源项目集锦
  10. Oracle19c安装图文教程