这个是在kotlin中遍历集合时,使用标签的过程中,可能会遇到的小错误。

提示的字面上的信息,就是在forEach中这个标签不能表示为loop(也就是循环),错误事例如下:

list.forEach loop@{if (it == "外面还很黑") {continue @loop}}

这里使用continue,和break都会报错。使用return就会正常了,让我们看看源码:

/*** Performs the given [action] on each element.*/
@kotlin.internal.HidesMembers
public inline fun <T> Iterable<T>.forEach(action: (T) -> Unit): Unit {for (element in this) action(element)
}

很明显forEach是一个fun,并不是一个loop

那么相对应的,在for 循环中使用return 也同样会报错。错误代码如下:

loop@ for (i in 0..4)  for (j in 5..9) {if (j == 8) {return@loop}}

这个时候编译器会给一个warn:Target label does not denote a function

改正:我们可以使用continue,或者break,看你的实际情况来定

官方讲解

Returns and Jumps

Kotlin has three structural jump expressions:

  • return. By default returns from the nearest enclosing function or anonymous function.
  • break. Terminates the nearest enclosing loop.
  • continue. Proceeds to the next step of the nearest enclosing loop.

我是翻译二把刀,你们自己看吧
还想了解一下kotlin中的循环的,请走这边https://blog.csdn.net/u010844304/article/details/86295639

The label does not denote a loop in forEach相关推荐

  1. python loop until_Euphoria loop until 语法

    loop...until 循环与while循环类似,除了loop...until 循环保证能执行至少一次 . 语法: loop...until 循环的语法是: loop do -- Statement ...

  2. ssis for循环容器_使用SSIS ForEach Loop容器以日期顺序处理文件

    ssis for循环容器 One positive thing to come out of my recent project that involved rewriting one of the ...

  3. 纯原生组件化-模块化的探索

    纯原生的组件化.模块化的一次小小的尝试,用到了如下几个新特性: shadown-DOM 对HTML标签结构的一个封装,真正意义上的组件,能保证 shadow-DOM 中的DOM元素不会被外界影响,内部 ...

  4. 2.6内核的配置与编译

    首先对内核进行菜单配置, 代码: CODE: cd /usr/src/linux make menuconfig 代码成熟度选项, 代码: CODE: Code maturity level opti ...

  5. PostgreSQL学习手册(PL/pgSQL过程语言)【转】

    原文http://www.cnblogs.com/stephen-liu74/archive/2012/06/06/2312759.html   一.概述: PL/pgSQL函数在第一次被调用时,其函 ...

  6. 0x00000000指令引用的内存不能为written_变量和内存访问

    计算机世界有一个常识--所有的数据和指令必须经由内存才能进入CPU的寄存器进而被CPU使用,那么我们程序操作的主战场就是内存,内存操作也就顺理成章成为了程序中最高频的操作. 为了节目的效果,我们先来看 ...

  7. 在Java中如何从一个多层嵌套循环中直接跳出?

    一.问题描述 最近发现一个有趣的问题,在Java中如何从一个多层嵌套循环中退出呢? 例如下面,有两层循环,break只能退出第一个for循环,不能直接跳出第二个for循环外面. public stat ...

  8. Uedit32高亮文件(加强)

    替换根目录下 wordfile.txt / /L1"C/C++" C_LANG Line Comment = // Block Comment On = /* Block Comm ...

  9. java跳转kotlin页面_Kotlin:return与跳转

    Kotlin有两种跳转:循环跳转(break与continue)和返回跳转(return). Label label语法:labelName@ label可以放在任何表达式之前,用来标记表达式.如lo ...

最新文章

  1. C Primer Plus 第10章 数组和指针 10.5 指针操作
  2. axure怎样24位bmp输出_平衡(非平衡)输入输出的无源变压器前级放大器
  3. 如何避免开发一款失败的产品?
  4. vagrant --- vagrant部署环境
  5. 利用ffmpeg来进行视频解码的完整示例代码
  6. pdf python定位_如何使用PyPDF2获取PDF定位
  7. 关于ORACLE数据传输加密的介绍
  8. mysql 表2符合表1,MySQL:表tbl_2_1_15已满
  9. 互联网移动在“云”端
  10. 工程介绍好处费性质_承包工程项目都要注意什么?怎么防止拖欠工程款
  11. java学习之路目录(已完结)
  12. element el-autocomplete组件 自定义传参的解决方法
  13. Java — 如何产生随机数(Random类)
  14. Golang 大杀器之性能剖析 PProf
  15. mac下发html邮件的方法
  16. 云计算技术,主要包含哪些关键技术?
  17. 小白股市扫盲系列--美联储加息减息对市场究竟有什么影响?
  18. 支持html5特性的浏览器,五大主流浏览器对CSS3和HTML5特性支持情况的详细清单
  19. 【笔记】html 图片映射 usemap(vue环境下、map、area、coords)
  20. C++实现鼠标手写+自绘按钮

热门文章

  1. 王通:站内搜索引擎的SEO策略
  2. MySQL主从复制-基于日志点配置
  3. 卡通冰材质的简单实现
  4. Jquery获取一段时间内所有对应的日期,并获取日期对应的星期几。
  5. linksys rv042配置client to gateway ***
  6. 来看Prada大秀吗?在元宇宙里那种!
  7. Java序列化 Serializable和Externalizable浅析
  8. 2021-10-03 小黑与挖矿木马程序的斗智斗勇
  9. 天谕手游服务器今日可创建账号数已达上限,天谕堪称网易2020头号手游?内测人数爆满,玩家直呼爷青回...
  10. 【Fix Bug】针对 Google Photos 返回的图片Uri,裁剪照片失败