java跳转kotlin页面_Kotlin:return与跳转
Kotlin有两种跳转:循环跳转(break与continue)和返回跳转(return)。
Label
label语法:labelName@
label可以放在任何表达式之前,用来标记表达式。如loop@ for (i in 1..100) {
// ...
}
break和continue
break和continue用于循环的跳转。break默认情况下跳出最近的循环语句。
continue默认为跳出最近循环语句当前的一次迭代,继续执行下一次迭代。
break示例for (i in 1..100) {
for (j in 1..100) {
if (...) break
}
}
break跳出了里面的for循环语句。
continue示例for (i in 1..100) {
for (j in 1..100) {
if (...) continue
}
}
continue跳出里面for循环语句的当前迭代,继续执行里面for循环语句的下一次迭代。
默认情况下,break和continue是以最近的循环语句跳转。在多个内嵌循环里,可以使用label来跳转。loop@ for (i in 1..100) {
for (j in 1..100) {
if (...) break@loop
}
}
与前面的break示例不同,此处break会跳出loop@标记的for循环。
return
return语句默认为跳出最近的函数。fun foo() {
ints.forEach {
if (it == 0) return
print(it)
}
}
在此示例里,return会跳出foo函数,而不是跳出forEach里的lambda表达式。
如果需要在lambda表达式返回有两种方法把lambda表达式改为匿名函数
结合label使用
匿名函数fun foo() {
ints.forEach(fun(value: Int) {
if (value == 0) return
print(value)
})
}
这里return跳出的是匿名函数,因为最近的函数为在forEach里定义的匿名函数。
结合label使用
结合label使用,可以让return在lambda表达式返回。fun foo() {
ints.forEach lit@ {
if (it == 0) return@lit
print(it)
}
}
此处在forEach里的lambda表达式返回。更简单的方法是使用调用lambda表达式的函数作为标签,如forEach
上面的例子等同于fun foo() {
ints.forEach {
if (it == 0) return@forEach
print(it)
}
}
return除了跳出指定的label外,也可以在跳出处返回一个值。return@a 1
这里的return表示在@a处返回1.
java跳转kotlin页面_Kotlin:return与跳转相关推荐
- 微信公众号跳转H5页面获取openid,再跳转小程序
需求:从微信公众号跳转到小程序,获取到公众号的openid 1.openid? openId 是用户在当前公众号下的唯一标识('身份证'),就是说通过这个openId,就能区分在这个公众号下 ...
- react如何跳转html页面,react中实现点击跳转到新页面方法
实现点击跳转到新页面,可以有两种形式,一个是本地页面打开,一个是本地页面不变跳转到新的页面. (一)页面点击本地页面打开新页面 引入ant的Button组件 onClick={()=>{wind ...
- response跳转html页面,puppeteer跳转页面后response获取
puppeteer跳转页面后response获取 问题简述 业务场景 接受到了请求后 前端立马跳转了页面 page.on('response', response => { if( respon ...
- nuxt.js 跳转新页面
nuxt.js 跳转新页面的方法 一般跳转方式的写法为: this.$router.push({path: `/soft/${e.routerKey}`,}) 跳转新页面的方式1: let route ...
- 基于H5跳转APP,未安装的话就跳转appstore
最近公司业务做到推广这块,下发短信H5链接点击有APP跳APP,没有跳应用市场的业务,参考大佬的博客实现 代码如下: toApp() {//微信内置浏览器let ua = navigator.user ...
- java语言如何跳转界面_在java中spring mvc页面如何跳转,详细图解
众所周知,java编程语言的应用在当今社会必不可少,它是当下人们提升自己充实自身的重要选择.所以,今天主要来为大家介绍java的入门知识,在 java中spring mvc页面如何跳转,通过详细的图片 ...
- java跳转画面后画面白了_如何跳转指定页面后再次跳转到另一页面或原来的页面...
c#图解教程第5版数万读者认可的新 99.33元 (需用券) 去购买 > 这里可以采用redirect以get形式向指定页面发出get请求,指定页面完成后会再次跳转到redirect后边指定的页 ...
- java session失效之后跳转_详解springmvc控制登录用户session失效后跳转登录页面
springmvc控制登录用户session失效后跳转登录页面,废话不多少了,具体如下: 第一步,配置 web.xml 15 第二步,配置spring-mvc.xml 第三步,写拦截器SystemSe ...
- java jsp 跳转_JSP 页面跳转的实现方法
客户端跳转 1. 使用 href 超链接标记 跳转 2. 使用表单提交完成跳转 ... 3. 使用 JavaScript 4. 使用 response.sendRedirect(String pat ...
最新文章
- FileStream 和StreamWriter 一起用时
- 接口api全局挂载_第 6 篇:分页接口
- 关于spring中util:/的配置
- c#使用Path.Combine的一个坑
- npm run test报错
- 华为一枝独秀!Q3国内智能手机出货量公布:Ov、小米、iPhone侧目
- centos安装SVN独立服务器
- 该设备或资源(Web代理)未设置为接受端口“7890“上的连接解决方案
- php 真太阳时间修正,真太阳时查询表(建议收藏)
- Navicat12注册机下载Navicat Premium12.1.17
- 2017第十四届国际真空展览会会刊(参展商名录)
- python上的包嗅探
- 拉丁超立方体抽样方法学习笔记
- Strong-Convexity:强凸性
- ETH2.0 Serenity中网络的详细介绍
- (八)Dubbo常见的错误总结
- 青春野狼不做姐控偶像的梦 - 线段树 - 扫描线 - 单调栈
- .net core 使用 Hangfire 实现定时、延时任务
- WebShell箱子简介与原理
- 【笔记】三张图读懂机器学习:基本概念、五大流派与九种常见算法