• Scala内置控制结构特地去掉了break和continue,是为了更好的适应函数式编程,推荐使用函数式的风格解决break和continue的功能,而不是一个关键字。Scala中使用breakable控制结构来实现break和continue功能。 ```scala import java.io.{BufferedReader, File, InputStreamReader, PrintWriter} import scala.util.control.Breaks._

    object test_stdin { def main(args: Array[String]): Unit = { val in = new BufferedReader(new InputStreamReader(System.in)) breakable{ while(true){ println(“?”) if (in.readLine() == “”)break } } } } ```

    • Break类实现break的方式是抛出一个异常,然后由外围的对breakable方法的应用所捕获。因此,对break的调用并不需要跟对breakable的调用放在同一个方法内。