簡體   English   中英

過濾元組列表

[英]Filtering a list of tuples

我有一個元組列表,我想過濾掉元組中第二個值不等於 7 的所有元素。

我願意:

valuesAsList.filter(x=>x._2 != 7)

我可以使用通配符來使它更短嗎?

謝謝。

你可以

valuesAsList.filter(_._2 != 7)

但我懷疑它應該比你的例子或這個(想想可讀性)更受歡迎:

valuesAsList.filter {case (_, v) => v != 7}

相當直接,恕我直言沒有真正的優勢:

valuesAsList.filter(_._2 != 7)

對於元組數組,我們可以使用 for with yield 返回一個數組

scala> val str = Array((2,Hello), (3,MyNameIs), (8,Lolo))

res34: Array[(Int, String)] = Array((2,Hello), (3,MyNameIs), (8,Lolo))

Scala> for(i <- str if(i._2.size > 4)) yield (i._1,i._2.toLowerCase)

res35: Array[(Int, String)] = Array((2,hello), (3,mynameis))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM