我在想,你有一个干净利落的方法吗?
if(orderBean.getFiles().size() > 0 && orderBean.getFiles().size() < 5)
Run Code Online (Sandbox Code Playgroud)
没有声明其他地方不需要的变量?
int filesCount = orderBean.getFiles().size();
if(filesCount > 0 && filesCount < 5) {
Run Code Online (Sandbox Code Playgroud)
我的意思是,在for循环中我们为实际迭代"声明条件",可以声明一个变量然后指定条件.在这里,人们无法做到,也无法做到这一点
if(5 > orderBean.getFiles().size() > 0)
Run Code Online (Sandbox Code Playgroud)
jta*_*orn 25
简单实用方法:
public static boolean isBetween(int value, int min, int max)
{
return((value > min) && (value < max));
}
Run Code Online (Sandbox Code Playgroud)
And*_*yle 10
一些第三方库具有封装范围概念的类,例如Apache commons-lang的Range(和子类).
使用这样的类你可以表达你的约束类似于:
if (new IntRange(0, 5).contains(orderBean.getFiles().size())
// (though actually Apache's Range is INclusive, so it'd be new Range(1, 4) - meh
Run Code Online (Sandbox Code Playgroud)
还有额外的好处,可以将范围对象定义为类中其他位置的常量值.
但是,如果没有引入其他库并使用它们的类,Java的强大语法意味着您无法按摩语言本身来很好地提供此功能.并且(在我看来),仅仅因为少量的语法糖而吸引第三方库是不值得的.