如何在单个 return 中 return 布尔值 "if-then-else" 语句
How to return boolean "if-then-else" statement in a single return
我收到一个声纳问题 用一个 return 语句替换这个 if-then-else 语句。 因为我在 if 条件中有三个条件,如果没有 if-else,我怎么能 return 这个?
public boolean isDateRangeExceedOneYear(CardPluginInterface plugin, Date begin, Date end)
{
if (!DateTimeToolkit.getInstance().isEmpty(begin)
&& ((CardValidatorInterface) plugin).isValidateYearDateRangeFor()
&& DateTimeToolkit.getInstance().compare(
DateTimeToolkit.getInstance().add(new DateTime(begin, new Time((short) 0, (short) 0, (short) 0)), 1, 1).date,
end) <= 0)
{
return true;
}
else
{
return false;
}
}
对于以上你可以使用
return !DateTimeToolkit.getInstance().isEmpty(begin)
&& ((CardValidatorInterface) plugin).isValidateYearDateRangeFor()
&& DateTimeToolkit.getInstance().compare(
DateTimeToolkit.getInstance().add(new DateTime(begin, new Time((short) 0, (short) 0, (short) 0)), 1, 1).date,
end) <= 0;
我收到一个声纳问题 用一个 return 语句替换这个 if-then-else 语句。 因为我在 if 条件中有三个条件,如果没有 if-else,我怎么能 return 这个?
public boolean isDateRangeExceedOneYear(CardPluginInterface plugin, Date begin, Date end)
{
if (!DateTimeToolkit.getInstance().isEmpty(begin)
&& ((CardValidatorInterface) plugin).isValidateYearDateRangeFor()
&& DateTimeToolkit.getInstance().compare(
DateTimeToolkit.getInstance().add(new DateTime(begin, new Time((short) 0, (short) 0, (short) 0)), 1, 1).date,
end) <= 0)
{
return true;
}
else
{
return false;
}
}
对于以上你可以使用
return !DateTimeToolkit.getInstance().isEmpty(begin)
&& ((CardValidatorInterface) plugin).isValidateYearDateRangeFor()
&& DateTimeToolkit.getInstance().compare(
DateTimeToolkit.getInstance().add(new DateTime(begin, new Time((short) 0, (short) 0, (short) 0)), 1, 1).date,
end) <= 0;