600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > java打印结果横向排列_Java8排列组合(6行代码实现)

java打印结果横向排列_Java8排列组合(6行代码实现)

时间:2021-06-27 05:09:33

相关推荐

java打印结果横向排列_Java8排列组合(6行代码实现)

记得有一次想起一个四个字的昵称,于是在一张纸上写下所有喜欢的字,看看字之间的排列组合能不能组成比较好的昵称ヾ§  ̄▽)ゞ2333333, 当时刚学编程,所以也在想怎么用代码实现多个字排列组合出所有的四个字,当时冥思苦想用了4个for循环实现了。

最近在读《Java实战(第2版)》看到一道题:

《Java实战(第2版)》第5章 使用流(第94页)

答案中的代码可以将2个集合进行组合,于是想到既然2个集合可以组合,哪更多的集合应该也可以,用这种方式应该也能实现多个字的排列组合,一试果然能实现,代码示例:

List

总结下规律,结果为N个字的组合,需要N-1个flatMap,既然这样,应该也可以将N当参数传递,想生成几个字的排列组合就生成几个字的,代码实现:

有重复字符串的排列组合:

/**

无重复字符串的排列组合:

/**

测试:

List

力扣:面试题 08.07. 无重复字符串的排列组合

Java8 stream版无重复字符串的排列组合

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。