【发布时间】:2014-08-11 13:31:35
【问题描述】:
这两个选项哪个更好?
if(obj.getType!=null && obj.getData()!=null)
{
// Do something
}
elseif(obj.getData==null)
{
// Do other thing
}
*OR*
if(obj.getType!=null)
{
if(obj.getData!=null)
{
// Do something
}
else
{
// Do other thing
}
}
主要的疑问是为什么在第一种方式中两次对 getData 进行空检查?第二个选项只执行一次。
【问题讨论】:
-
见仁见智。就个人而言,需求的复杂性决定了我可以使用哪种风格
-
第二个对我来说似乎更好,因为它更具可读性并且更易于维护。但正如 MadProgramer 所说,这是见仁见智的问题。
-
这两个 if-else 语句有不同的行为。当 obj.getType==null 和 obj.getData==null.
-
好吧,既然第一个没有编译,我会选择第二个...
标签: java if-statement optimization