我需要检查一组布尔值,并相应地对每个值进行操作。
当前代码是这样的,但我想让它更容易阅读
If heater_check(0) = true Then
get_temp(0)
End If
If heater_check(1) = true Then
get_temp(1)
End If
...
等等。有更好的解决方案吗?
答案 0 :(得分:3)
我想这就是你要找的东西
For i As Integer = 0 To heater_check.length - 1
If heater_check(i) then
get_temp(i)
End If
Next
答案 1 :(得分:0)
“对于这样的情况,For循环是否仍然有效?如果node_num =”1“那么Temperature(0)= C_D(Convert.ToChar(raw_result(byte_num + 22)))+ C_D(转换.ToChar(raw_result(b ........“
chia kang ren
答案是:
“只要变量上有'模式',就可以随时使用循环来简化你的If-Else语句”
TheQuickBrownFox
..或者使用一些逻辑将两个不同类型的变量绑定在一起,只要有某种之间的关系。
' ...
Dim TempIndex As Int32 = Integer.Parse(node_num) - 1
' Converts node_num to an Integer and substract 1.
Temperature(TempIndex) = _
C_D(Convert.ToChar(raw_result(byte_num + 22))) + _
C_D(Convert.ToChar(raw_result(byte_num + 21))) * 16 + _
C_D(Convert.ToChar(raw_result(byte_num + 20))) * 256
' ...
顺便说一句,如果您要求 A ,只有A的答案是相关的,或答案涵盖A 与A直接相关的任何内容,例如 A', -A ,A²或 | A | 强>
这里我说的是将字符串转换为整数。这与:无关:
“我需要检查一系列布尔值,并相应地对每个值进行操作。”
=> 请将TheQuickBrownFox's answer标记为有效答案。 (并且避免询问除原始问题之外的其他问题 - :))