如何检查NSInteger是否大于另一个NSinteger?

时间:2012-11-03 00:37:01

标签: objective-c c cocoa nsstring nsinteger

我正在尝试编写检测整数是否大于另一个整数的代码。这可能吗?

这是我到目前为止所做的。

if (NumCorrect >> NumWrong) {
    btnCool.title = @"Awww";
}

else {
    btnCool.title = @"Cool!";
}

它所做的就是去其他地方

修改

NSString *numCorrect = [NSString stringWithFormat:@"%d",NumCorrect];
NSString *numWrong = [NSString stringWithFormat:@"%d", NumWrong];
lblWrong.text = numWrong;
lblCorrect.text = numCorrect;
if (NumCorrect > NumWrong) { 
    btnCool.title = @"Awww"; 
} else { 
    btnCool.title = @"Cool!"; 
}

2 个答案:

答案 0 :(得分:0)

使用单>

if (NumCorrect > NumWrong) {
    btnCool.title = @"Awww";
} else {
    btnCool.title = @"Cool!";
}

Double >>是一个位移操作。您将变量NumCorrect NumWrong字节数的二进制表示中的每一位都移到右侧。在几乎所有情况下,这将返回0以外的数字,然后将其视为false值,从而执行else块。

答案 1 :(得分:0)

几乎完美 - 只需摘下其中一个>>><<用于“位移”,这是编程初期的一个奇怪的保留。你不会用它们太多。您真正想要的是><,用于测试数字是否大于彼此或小于彼此。

此外,您可能还记得数学课程中≥和(大于或等于,小于或等于)也是有用的操作。但是,由于大多数键盘上没有符号,因此C和Xcode会改为使用>=<=

最后,您可能已经知道这一点,但要检查两个数字是否完全相等,您可以使用==(因为=用于设置变量的内容)。

希望这有用!