0

我一直在尝试创建一个 if else 语句,它将根据某些约束返回一个文本字符串。前 3 个约束有效,但是当最后一个约束的事件发生时,它会再次触发第二个。随机数生成器偶尔会使用 0 值,所以我想说明这一点。我对此并不陌生,并为缩进等道歉。

我一直在这里找了一会儿,找不到任何似乎涵盖这一点的东西。如果我错过了它,也将不胜感激在正确方向上的提示。

double txtestimateCategory = [mynum computeVolume];
NSLog(@"The volume is %f", txtestimateCategory);
int v = ((txtestimateCategory * 1));
if ((v >= 8000))
{
    NSLog(@"The box is large");
}
else if ((1 <= v < 1000))
{
    NSLog(@"The box is small");
}
else if ((1000 <= v < 8000))
{
    NSLog(@"The box is medium");
}
else
{
      NSLog(@"The box is a lie");
}
4

1 回答 1

4

比较器是二元运算符。你必须写:

else if (1 <= v && v < 1000)

等等

(否则,您将评估类似true < 1000, 并隐式true转换为1。不是您的意思!)

于 2012-09-17T23:09:04.830 回答