代码之家  ›  专栏  ›  技术社区  ›  BefittingTheorem

scala:元组的并行赋值

  •  11
  • BefittingTheorem  · 技术社区  · 15 年前

    是否可以在scala中并行分配元组成员?如果没有,是否还有其他方法来完成类似的事情?

    val players = List(
        new Player("Django Reinhardt", 42), 
        new Player("Sol Hoopii", 57),
        new Player("Marc Ribot", 64)
    )
    
    val winners, losers = players.partition(p => p.score > 50)
    
    // winners = List(Player name:Sol Hoopii score: 57, Player name:Marc Ribot score: 64)
    // losers = List(Player name:Django Reinhardt score: 42)
    
    1 回复  |  直到 13 年前
        1
  •  20
  •   Malax    15 年前
    val winners, losers = players.partition(p => p.score > 50)
    

    将(list,list)元组赋给两个变量。如果要解包tuple,必须使用

    val (winners, losers) = players.partition(p => p.score > 50)
    

    这正是你想要的。-)

    推荐文章