selectedSegmentIndex始终返回0

时间:2012-07-14 15:30:44

标签: objective-c

我正在构建一个Rock Paper Scissors游戏,我正在尝试实现一个永远不会有平局的系统。我目前的系统是

if (userSelection == 0)
    computerPick =[self computerGenerateResponce];
    if (computerPick == 0)
        while (computerPick == 0)
            computerPick = [self computerGenerateResponce];

有没有更好的方法来实施这个系统?这有效,但看起来有点笨重。

1 个答案:

答案 0 :(得分:1)

至少,你可以消除if(computerPick == 0)级别,因为这是while(computerPick == 0)的第一件事。这根本不会影响您的算法。然后,您可以将调用合并到条件检查中,此外,您可以使用隐式布尔强制转换:

if (!userSelection)
    while(! (computerPick = [self computerGenerateResponce]))

这基本上只是继续为computerPick分配一个新的选择,直到它不为零。