Wae*_*air 0 java data-structures
我在犹豫什么是保存以下数据形式的合适数据结构:
所以,如果我有一个result_number,我可以 -
那么适当的数据结构是什么?
这听起来像你想要的......
(等等......)
...一个有两个整数和一个字符串的类.
public final class RangeValidation {
private final int minimum;
private final int maximum;
private final String message;
public RangeValidation(int minimum, int maximum, String message) {
if (minimum > maximum) {
throw new IllegalArgumentException("Invalid min/max combination");
}
if (message == null) {
throw new NullPointerException();
}
this.minimum = minimum;
this.maximum = maximum;
this.message = message;
}
// You can tweak this API, of course...
// it could throw an exception instead, or return an empty string for
// success, etc.
public String validate(int value) {
return value < minimum || value > maximum ? mesasge : null;
}
}
Run Code Online (Sandbox Code Playgroud)
当然,您可能希望将此实现设置为适合更通用的验证框架等的接口......但重要的是,您已经巧妙地描述了您希望类型包含的内容 - 所以您只需要编写它.
另请注意,这会将maximum值计为包含值- 您可能希望将其设为独占值,以便能够表示空范围.(这确实使代表一个Integer.MAX_VALUE有效的范围变得更难......)