在while循环的条件下分配给变量 - scala

Nul*_*ano 5 scala while-loop

我是Java我可以写这个:

Matcher m;
while ((m = pattern.matcher(string)).matches()) {...}
Run Code Online (Sandbox Code Playgroud)

我如何在Scala中执行此操作?这不起作用:

var m: Matcher = null
while ((m = pattern.matcher(s)).matches()) {}
Run Code Online (Sandbox Code Playgroud)

ser*_*jja 9

分配Unit在Scala中返回,但是可以使用这样的代码块:

while ({
  val m = pattern.matcher(s)
  m.matches
}) { ... }
Run Code Online (Sandbox Code Playgroud)

  • 如果我想在循环体中使用val m? (2认同)