Scala:具有匹配和副作用的条件产量?
发布时间:2020-12-16 18:05:32 所属栏目:安全 来源:网络整理
导读:以下内容的正确语法是什么? var foo = 0someIterator.foreach{ x = x.property match { case "a" = foo += 1 case "b" = yield "current foo" + foo}} 即,我正在尝试迭代someIterator.当它匹配一件事时,它应该通过闭包更新局部变量;当它遇到另一个时,它应该
以下内容的正确语法是什么?
var foo = 0 someIterator.foreach{ x => x.property match { case "a" => foo += 1 case "b" => yield "current foo" + foo }} 即,我正在尝试迭代someIterator.当它匹配一件事时,它应该通过闭包更新局部变量;当它遇到另一个时,它应该产生一些当前状态的推导到结果迭代器,保留连续迭代的状态. 解决方法
您可以使用Option [String],解除并收集.
> unlift接受一个返回选项的函数并将其转换为部分函数. 以下示例演示了该方法: import Function.unlift var foo = 0 someIterator.map(_.property).collect(unlift { case "a" => foo += 1; None case "b" => Some("current foo" + foo) }) Live Demo (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |