我写一个方法,并想知道如果附带的代码是有效取决于它是怎么写的:高效的编程技术
public boolean isThreeOfKind(PlayingCard[] hand)
{
// if(hand[0].getRank() == hand[2].getRank())
// return true;
// else if(hand[1].getRank() == hand[3].getRank())
// return true;
// else if(hand[2].getRank() == hand[4].getRank())
// return true;
return (hand[0].getRank() == hand[2].getRank() ||
hand[1].getRank() == hand[3].getRank() ||
hand[2].getRank() == hand[4].getRank());
}
所以你可以看到我有一个if else if语句可评论out和return语句基本上做同样的事情,根据编码标准,这会更有效率吗?
可读性远在这种情况下,比效率更有价值。使用哪个更容易理解。 – Jeffrey
在遥远的土地和语言中,逻辑操作比分支要快得多。但现代编译器已经把我们全部变成了代码猴,所以只需使用任何漂浮在你的船上的东西。 – Perception
嗯看起来像'手'中的'玩牌'更好地按价值排序。花了我一分钟来弄清楚这将是'一种三'。只是说' –