如果字段“ size”为空,则将引发异常:
.dataTables_scrollHeadInner, .table{
width:100%!important
};
我尝试使用.size!但这也产生了异常。如何检查尺寸是否大于零?
答案 0 :(得分:3)
(p!!.company?.industries?.size ?: 0) > 0
如果size
(或更可能是链中的另一个元素)为null
,会给您0,因此比较为0 > 0
,这是错误的。
但是请注意:为什么一切首先都可以为空?为何您会有?.
和!!
这样的随机组合?
所有字段成员都可以为空,因为此数据是从Web导入的,因此不能保证任何字段都会存在。
即使那样,您至少也可以做
val industries = p?.company?.industries
if (industries != null && industries.size > 0) {
job.industryName = industries[0]
}
或
p?.company?.industries?.let {
if (it.size > 0) { job.industryName = it[0] }
}
如果您不想为其创建变量。