0

可能重复:
布尔类型

有时您想有条件地将布尔值设置为 true 或 false,否则只是不理会它。但是很多时候,您确实希望根据这个和/或那个的状态将其设置为真或假。我经常想知道为什么在后一种情况下,大多数人似乎都在编写这样的代码(甚至在书中):

if ((location < Platypi.Length) && (Platypi[location] != null))
{
  return true;
}
else
{
  return false;
}

当这将同样清晰和简洁时:

return ((location < Platypi.Length) && (Platypi[location] != null));

冗长真的是首选方法吗?对我来说,它几乎是一种代码味道。

4

1 回答 1

3

不,除了明确地明确代码流之外,没有理由这样做。就个人而言,我会写成:

return location < Platypi.Length && Platypi[location] != null;

不过,因为我发现它和扩展版一样容易理解。不过,有些人可能会被它抛弃。

或者,这可能只是人们偶尔犯的错误。

于 2012-06-30T14:41:19.683 回答