在Scala中,map、flatMap和filter是用來對集合進行操作的高階函數。
map:map函數會對集合中的每個元素應用一個函數,并返回一個新的集合,其中包含了每個元素經過函數處理后的結果。例如,如果有一個List(1, 2, 3) ,我們可以使用map函數將每個元素加1,得到一個新的List(2, 3, 4)。
flatMap:flatMap函數與map函數類似,但是它的處理函數返回的是一個集合而不是單個元素。flatMap會將所有處理函數返回的集合合并成一個新的集合,并返回這個新集合。例如,如果有一個List(List(1, 2), List(3, 4)),我們可以使用flatMap函數將這個嵌套的List展平,得到一個新的List(1, 2, 3, 4)。
filter:filter函數會根據給定的條件過濾集合中的元素,只保留符合條件的元素。例如,如果有一個List(1, 2, 3, 4),我們可以使用filter函數只保留其中的偶數元素,得到一個新的List(2, 4)。