加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

我可以检查Scala中是否已经评估过一个惰性值?

发布时间:2020-12-16 09:20:38 所属栏目:安全 来源:网络整理
导读:例如,在toString方法中,我想给出关于类的延迟val成员是否被评估的信息,如果是,则打印其值.这可能吗? 解决方法 据我所知,你不能.但你可以帮助: class A { var isMemberSet = false lazy val member = { isMemberSet = true; 8 } } val a = new A a.isMember
例如,在toString方法中,我想给出关于类的延迟val成员是否被评估的信息,如果是,则打印其值.这可能吗?

解决方法

据我所知,你不能.但你可以帮助:

class A {
    var isMemberSet = false
    lazy val member = { isMemberSet = true; 8 }
  }

  val a = new A
  a.isMemberSet // false
  a.member // 8
  a.isMemberSet // true

当然,必须修改可见性和访问修饰符.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读