我正在将数据存储在通用类型为<E>
的数组中,并且需要将该数组中的某些单元格标记为空。我无法使用null
,因为null是需要与空单元格区分的有效条目。
做出这种区分的最佳方式是什么?我想避免使用其他数据结构,例如包含"empty"
单元索引的列表。Java泛型类型EMPTY vs null
在一个Object
阵列I将简单地创建一个虚拟实例的情况下:
Object EMPTY = new Object();
,然后标记空单元使用:
array[emptyIndex] = EMPTY;
据我知道我不能创建一个实例通用类型E虽然被用作"EMPTY"
标记。是否有另一种创建空白标记的方法或者是否有其他解决方案?
使用'null'作为实际值非常危险,建议您重新考虑。无论如何,看看'可选'。 –
@ E_net4'Optional'不能包含'null'。 –
请勿使用'E'类型,但实际上可以满足您的需求。你可能想写一个封装'E'的封装类。 –