2017-05-03 66 views
2

假設我們有一個列表:val list = List((1,'o'), (3,'t'), (10, 't'), (7, 's'))scala - 僅在第一個元素值列表中找到一對

然後我想找到一個對的第一個元素是10,忽略第二個元素是什麼。

我怎麼找到這對或索引的一對?我試過list.indexOf((10,_))list.indexOf((10,???))等等。然而,如你所知,這些嘗試是錯誤的。

任何建議,歡迎:)

回答

5

使用indexWhere找到索引:

list.indexWhere(_._1 == 10) 

如果你想對你可以使用find

list.find(_._1 == 10) 

注意find返回選項,因爲它可能找不到任何元素。如果您想返回默認值,您可以使用getOrElse,否則您需要處理未找到的案例:

list.find(_._1 == 10).getOrElse(/* default value */) 
+0

非常感謝!這就是我要的。 – yakkisyou

相關問題