最新消息:20210917 已从crifan.com换到crifan.org

【已解决】scala中如何实现for循环中的continue继续执行

实现 crifan 187浏览 0评论
折腾:
【未解决】优化游戏规则生成脚本ruleClean的scala代码和逻辑
期间,对于代码:
for(l <- file.getLines()){
  if(l.trim.isEmpty)
for循环中,想要去写成:
当空字符串,用continue跳过
scala continue
scala basic syntax
scala中实现break与continue功能_bitcarmanlee的博客-CSDN博客
scala for continue
Scala – Basic Syntax – Tutorialspoint
Basics | Tour of Scala | Scala Documentation (scala-lang.org)
Scala 循环 | 菜鸟教程 (runoob.com)
scala的break和continue – TTyb – 博客园 (cnblogs.com)
scala 是没有 continue 的,但是包含 break,可以用 break 构造出 continue 的效果
真是麻烦
Scala ‘break’ and ‘continue’ examples | alvinalexander.com
那感觉可以写成:
for(l <- file.getLines()){
  breakable {
    if (l.trim.isEmpty){
      break()
    }
    else{
      val row = l.split("\\|",2)
      if(row.size < 2){
        println(s"ERROR url : ${l} for ${rulePath}")
      }else{
        urlMatch.addPattern(row(0), row(1))
      }
    }
  }
}
去调试试试
是可以实现continue的效果的。
【总结】
scala 中没有continue,只有break,可以借用breakable和break,间接实现continue的效果:
import scala.util.control.Breaks.{break, breakable}

for(eachLine <- file.getLines()){
  breakable {
    if (eachLine.trim.isEmpty){
      break()
    }
    else{
      println(eachLine)
    }
  }

当然,即使调试通过,感觉也不好。
不如写成:
【已解决】scala中实现变量取反not操作

转载请注明:在路上 » 【已解决】scala中如何实现for循环中的continue继续执行

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
85 queries in 0.125 seconds, using 21.45MB memory