scala中的“返回”和“try-catch-finally”块评估
发布时间:2020-12-16 09:21:05 所属栏目:安全 来源:网络整理
导读:以下两个代码产生不同的结果: def x = try{ true} finally false 调用x成为true def y:Boolean = try{ return true} finally { return false} 调用y得到false 返回版本的行为与Java相同. 我个人不会在scala中使用’return’.但是,了解scala如何评估try-catc
以下两个代码产生不同的结果:
def x = try{ true } finally false 调用x成为true def y:Boolean = try{ return true } finally { return false } 调用y得到false 返回版本的行为与Java相同. 我个人不会在scala中使用’return’.但是,了解scala如何评估try-catch-finally块的值是很好的.谢谢. 解决方法
你
should not在finally块中有一个return语句(即使它在技术上是允许的,至少在Java中,C#例如禁止它).
如果Scala终于阻止了一个隐含的返回,那么总是会破坏预期的返回值.所以没有意义. 但是,如果你明确地写这样的话,我想它无法帮助你. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- angularjs – 使用Angular在输入提交按钮上动态设置文本
- scala – 如何列出所有cassandra表
- twitter-bootstrap – 如何使bootstrap3的导航栏输入大小填
- scala – 使用Spark 2.0.2(结构化流媒体)从Kafka阅读Avro消
- scala – 为play框架http响应创建可写[Argonaut.Json]
- Angular 2 rc3路由器弃用的软件包问题
- angular – Ionic 3 ngrx/store redurs仅在生产模式下不接收
- angularjs – Angular:如何在app.config之后获取$routePro
- Bootstrap相关整理
- angular – 从父组件重置表单