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

Groovy方法类似于LINQ的DefaultIfEmpty和FirstOrDefault

发布时间:2020-12-14 16:22:01 所属栏目:大数据 来源:网络整理
导读:Groovy是否有任何类似于LINQ中的DefaultIfEmpty或FirstOrDefault方法的方法(开箱即用)? 解决方法 DefaultIfEmpty可以包含在: def list = []def defaultIfEmpty = list ?: [ 'was empty' ] FirstOrDefault比较复杂,因为我相信如果列表中没有第一个元素,它会
Groovy是否有任何类似于LINQ中的DefaultIfEmpty或FirstOrDefault方法的方法(开箱即用)?

解决方法

DefaultIfEmpty可以包含在:

def list = []
def defaultIfEmpty = list ?: [ 'was empty' ]

FirstOrDefault比较复杂,因为我相信如果列表中没有第一个元素,它会返回给定类型的默认值…但是,在Groovy中(如它所示),没有办法检测对象的默认类型(除非它是原生类型)

你可以这样做:

Integer defaultIfEmpty = list[ 0 ] ?: 0

但是应该注意到elvis运算符?:在Groovy truth上工作,所以如果运算符左边的元素在Groovy中评估为false(无论是null,空列表或字符串,数字0等),它将返回右侧)

还应该注意的是,我不是.NET专家,因此这两个函数的功能可能不正确.

(编辑:李大同)

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

    推荐文章
      热点阅读