如何用scala优化双重for循环
时间: 2023-03-31 07:01:54 浏览: 167
可以使用flatMap和filter函数来优化双重for循环,将其转化为单层循环。具体实现可以参考以下代码:
val result = list1.flatMap(x => list2.filter(y => x + y == target).map(y => (x, y)))
其中,list1和list2分别为两个需要遍历的列表,target为目标值。flatMap函数将list1中的每个元素映射为一个列表,然后将这些列表合并为一个新的列表。filter函数用于过滤出符合条件的元素,map函数用于对符合条件的元素进行映射。最终得到的result列表中,每个元素都是一个符合条件的元组。
阅读全文