单个变量表示一个项目,所有项目或无

时间:2014-10-21 05:15:02

标签: java

我正在编写一个接受UUID来表示XML中项目的方法。专门用于表示“全部”或“无”的值的最佳方法是什么?我认为最好不要将UUID组成代表所有人或不代表UUID。我是否最好创建一个包含所有或不包含私有变量标志的包装类?

2 个答案:

答案 0 :(得分:1)

您可以使用enum之类的

enum SelectionType {
    ONE, ALL, NONE;
}

答案 1 :(得分:0)

我认为最干净的实现是UUID的数组(或List)。然而,这假设你实际上知道"所有" UUIDs。 "没有"被覆盖。对于" all",如果您不了解所有UUID,则将null作为特殊情况,或者使用特殊常量。 e.g。

public static final UUID[] ALL = new UUID[0];

并在您的代码中

if (inArray == ALL)
   handleAllCase();
else
   onlyHandleUUIDsInArray(inArray);

另一种可能性是一系列UUID,最小值和最大值。如果max等于min,则表示" one",如果max小于min,则表示" none",并且对于所有你将min设置为最小可能UUID并且max设置为最大值。

最后,一种快速而肮脏但可以理解的方法可能是将null用于无和一个特殊值,如" *"为了所有人。