lambda 生成笛卡尔集
public static void getDiKaEr() {
List<List<String>> source = new ArrayList<>();
List<String> color = Arrays.asList("红色", "白色", "蓝色");
List<String> size = Arrays.asList("中", "大", "小");
List<String> origins = Arrays.asList("中国", "瑞士");
source.add(color);
source.add(size);
source.add(origins);
List<String> result = source.stream().reduce((a, b) -> {
List<String> results = new ArrayList<>();
a.forEach(param1 -> {
b.forEach(param2 -> {
results.add(param1 + "-" + param2);
});
});
return results;
}).get();
System.out.println(result);
}
推荐阅读
mysql 存储过程批量处理带分隔符的字符串
CREATE DEFINER=root@% PROCEDURE updateMerchantOrderNo()BEGIN {代码...} END
叮咚_打地鼠阅读 810
Y 分钟速成 Lambda Calculus
Lambda 演算(lambda calculus, λ-calculus), 最初由阿隆佐·邱奇(Alonzo Church)提出, 是世界上最小的编程语言. 尽管没有数字, 字符串, 布尔或者任何非函数的数据类型, lambda 演算仍可以表示任何图灵机.
小X学技术阅读 308
简单聊聊:Stream.reduce()用法解析
算法题:Words题目描述每个句子由多个单词组成,句子中的每个单词的长度都可能不一样,我们假设每个单词的长度Ni为该单词的重量,你需要做的就是给出整个句子的平均重量V。
键盘大虾阅读 247
Java新特性 之 Lambda表达式
Java内置四大核心函数式接口函数式接口参数类型返回类型用途Consumer<T>消费型接口Tvoid对类型为T的对象应用操作,包含方法:void accept(T t)Supplier<T>voidT返回类型为T的对象,包含方法:T get()...
阿南阅读 207
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。