我要在IntelliJ 2017版本中将Corda从版本1升级到版本3.1。我面临的问题是collection的属性不能为空
private var valueContractTransactionsVO = Collection<ValueContractTransactionVO>
我正在尝试为一个空集合类型的VO类创建一个对象,如上所述,但是它抛出错误“接口集合没有构造函数”,并且每当我尝试调用该对象时,它都会抛出错误“无法解析的引用”。
请帮助我为空集合创建一个不为null的对象。
答案 0 :(得分:2)
如果您需要一个空的只读集合,则可以调用emptyList
函数:
var valueContractTransactionsVO: Collection<ValueContractTransactionVO> = emptyList()
如果valueContractTransactionsVO
是Collection
的类型对于您的情况而言并不重要,则可以指定emptyList
函数的type参数,并让编译器将其类型推断为List<ValueContractTransactionVO>
:
var valueContractTransactionsVO = emptyList<ValueContractTransactionVO>()