我认为没有一个正确的答案。一些建议:
我看到之间最大的区别
long
,并Long
在这方面是Long
可能null
。如果有可能您缺少值,则该Long
对象将很有帮助,因为它null
可以指示值丢失。如果您使用的是原语,则必须使用一些特殊的值来表示缺失,这很可能会一团糟。除非您计划制作一百万个这样的数组然后进行序列化,否则速度或大小不太可能成为问题。我对验证逻辑的偏爱是
ValidationException
在事情可能失败的时候抛出某种习惯。如果您只是使用构造函数创建这些东西,那么最简单的方法就是在那里进行验证,例如public ClientInput(Long userid, Long clientid, Map<String, String> parameterMap, Long timeout_ms, boolean debug) throws ValidationException { if (userid == null) throw new ValidationException("UserId is required"); ...etc, etc...}
最终,
ValidationException仅当您可以在可以使用它做一些有用的事情时将其捕获时才有用-将其回显给用户或其他任何用户。



