Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 数字变量。如果条件没有提高_Objective C_Ios8 - Fatal编程技术网

Objective c 数字变量。如果条件没有提高

Objective c 数字变量。如果条件没有提高,objective-c,ios8,Objective C,Ios8,我想选择一个数字范围来更改图像视图的颜色背景 我使用iPhone的麦克风获取hz的值,该值被转换为字符串,并且该值不是固定的。 我想从18000.000f到1899.999f之间选择一个数字 这是我的密码 if (maxHZ = 18000.000f) { Image.backgroundColor = [UIColor blackColor]; } else if(maxHZ >= 17999.999f ) { Image.backgroundColor = [UIColo

我想选择一个数字范围来更改图像视图的颜色背景

我使用iPhone的麦克风获取hz的值,该值被转换为字符串,并且该值不是固定的。
我想从18000.000f到1899.999f之间选择一个数字

这是我的密码

if (maxHZ = 18000.000f) {
   Image.backgroundColor = [UIColor blackColor];
} else if(maxHZ >= 17999.999f ) {
    Image.backgroundColor = [UIColor redColor];
} else if(maxHZ >= 18999.999f) {
    Image.backgroundColor = [UIColor yellowColor];
}

我已将您的代码更正为右键检查,因为您使用的是
else if
,它不会进入最后一条语句,因为如果最后一条是真的,第二条也是真的

if (maxHZ == 18000.000f) {
   Image.backgroundColor = [UIColor blackColor];
} else if(maxHZ >= 17999.999f && maxHZ < 18999.999f ) {
    Image.backgroundColor = [UIColor redColor];
} else if(maxHZ >= 18999.999f) {
    Image.backgroundColor = [UIColor yellowColor];
}
或者如果他想要黑色,如果它不在这两个范围内:

if(maxHZ >= 18999.999f) {
    Image.backgroundColor = [UIColor redColor];
} else if(maxHZ >= 17999.999f) {
    Image.backgroundColor = [UIColor yellowColor];
} else {
    Image.backgroundColor = [UIColor blackColor];
}

我已将您的代码更正为右键检查,因为您使用的是
else if
,它不会进入最后一条语句,因为如果最后一条是真的,第二条也是真的

if (maxHZ == 18000.000f) {
   Image.backgroundColor = [UIColor blackColor];
} else if(maxHZ >= 17999.999f && maxHZ < 18999.999f ) {
    Image.backgroundColor = [UIColor redColor];
} else if(maxHZ >= 18999.999f) {
    Image.backgroundColor = [UIColor yellowColor];
}
或者如果他想要黑色,如果它不在这两个范围内:

if(maxHZ >= 18999.999f) {
    Image.backgroundColor = [UIColor redColor];
} else if(maxHZ >= 17999.999f) {
    Image.backgroundColor = [UIColor yellowColor];
} else {
    Image.backgroundColor = [UIColor blackColor];
}

从逻辑上来说,我想,你可能会寻找这样的东西,我想:

if (maxHZ >= 18999.999f) {
    Image.backgroundColor = [UIColor yellowColor];
} else if (maxHZ == 18000.000f) {
    Image.backgroundColor = [UIColor blackColor];
} else if (maxHZ >= 17999.999f) {
    Image.backgroundColor = [UIColor redColor];
} else {
    /* do something here, otherwise you would be left without explicit color */
}


(就我个人而言,我不知道你会看到多少次黑色,因为
18000.0
17999.999
之间的间隔是千分之一,你的输入可能不太准确,无法发现如此微小的差异。)

逻辑上,我猜,你可能会寻找这样的东西,我猜:

if (maxHZ >= 18999.999f) {
    Image.backgroundColor = [UIColor yellowColor];
} else if (maxHZ == 18000.000f) {
    Image.backgroundColor = [UIColor blackColor];
} else if (maxHZ >= 17999.999f) {
    Image.backgroundColor = [UIColor redColor];
} else {
    /* do something here, otherwise you would be left without explicit color */
}


(就我个人而言,我不知道你会看到多少次黑色,因为
18000.0
17999.999
之间的间隔是千分之一,你的输入可能不太准确,无法发现如此微小的差异。)

如果(maxHZ==18000.0f){…
,也许…,您的is语句没有任何意义,因为第三个分支永远不会被调用,就好像值大于
17999.999f
一样,它从第三个分支中窃取了乐趣–如果值小于
17999.999f
,则必须小于
18999.999f
,因此它永远不会被调用ode>if(最大赫兹=18000.000f)您没有检查
maxHZ
是否等于
18000.000f
您正在将其分配给
maxHZ
=
更改为
=
请注意,有两个
=
表示相等,而不是一个。如果您只做一个,这就是分配。@LucaTonelli,哪一个解释会给您带来困难?对不起,您的同事注释现在比较
if(maxHZ==18000.0f){…
,也许…,您的is语句没有任何意义,因为第三个分支永远不会被调用,就好像值大于
17999.999f
一样,它从第三个分支中窃取了乐趣–如果值小于
17999.999f
,则必须小于
18999.999f
,因此它永远不会被调用ode>if(最大赫兹=18000.000f)您没有检查
maxHZ
是否等于
18000.000f
您正在将其分配给
maxHZ
=
更改为
=
请注意,有两个
=
表示相等,而不是一个。如果您只做一个,这就是分配。@LucaTonelli,哪一个解释会给您带来困难?对不起,您的同事注释为compare Now,您可能希望将第一个案例更改为(maxHZ不,这是错误的,如果他这样做,即使maxHZ的值是17999.999,它也会输入到第一个语句中,但他不想这样做。测试的目的是什么?
maxHZ>=17999.999f
?黑匣子很可能永远不会被调用;这个答案解决了平等/赋值问题,但仍然不完美。可能想要c把第一个案子绞死(maxHZ不,这是错误的,如果他这样做,即使maxHZ的值是17999.999,它也会输入到第一个语句中,但他不想这样做。测试的目的是什么?
maxHZ>=17999.999f
?黑匣子很可能永远不会被调用;这个答案解决了平等/分配问题,但仍然不完美。