[英]How to iterate a list of Pair with Scala?
我想迭代Pair
對象的列表,但是有一些問題。 如下變量:
val list: JList[Pair[Integer, Integer]]
for (pair <- list){
//how to get first value and second value of pair instance
}
當我使用for
與<-
迭代,我不能Pair
實例,並不能得到的性能Pair
。
我假設JList
是Java swing組件。 如果真是這樣,那么就我所知,您不能直接在理解中使用它。 相反,您需要執行以下操作:
import scala.collection.JavaConversions._
for (pair <- list.getSelectedValuesList) {
//do something with pair
}
導入將提取隱式內容,這些隱式內容將從Java集合轉換為Scala集合。 之所以需要它,是因為您所使用的理解不適合foreach
方法調用,並且java.util.List
沒有定義foreach
方法。
增加傑森的答案。 通常建議使用JavaConverters
而不是JavaConversions
以避免討厭的問題 。 它有點冗長,但更安全。
解決方案將是這樣的:
import scala.collection.JavaConverters._
for (pair <- list.asScala.getSelectedValuesList) {
//do something with pair
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.