int bellowGreenLow = 0, bellowGreenHigh = 0, bellowYellowHigh = 0, aboveYellowHigh = 0;
int countSum = 0;
// 两个floatleixing 比较时,不能直接相减, 当比较是否相等时,应该用两者之差的绝对值 与精度 相比,如果小于则相等
for (tb_History *tempHistory in showHistorys) {
if (currentProfile.GreenLow.floatValue - tempHistory.BloodSugar.floatValue > 0.000001) { // 1 比较 小于
++bellowGreenLow;
}
if (tempHistory.BloodSugar.floatValue - currentProfile.GreenLow.floatValue > 0.000001 && // 2 比较 大于、小于
currentProfile.GreenHigh.floatValue - tempHistory.BloodSugar.floatValue > 0.000001) {
++bellowGreenHigh;
}
if (abs(tempHistory.BloodSugar.floatValue - currentProfile.GreenLow.floatValue) < 0.000001 || // 2 比较 相等
abs(currentProfile.GreenHigh.floatValue - tempHistory.BloodSugar.floatValue) < 0.000001) {
++bellowGreenHigh;
}
if (tempHistory.BloodSugar.floatValue - currentProfile.GreenHigh.floatValue > 0.000001 && // 3 比较 大于、小于
currentProfile.YellowHigh.floatValue - tempHistory.BloodSugar.floatValue > 0.000001) {
++bellowYellowHigh;
}
if (tempHistory.BloodSugar.floatValue - currentProfile.GreenHigh.floatValue > 0.000001 && // 3 比较 相等
abs(currentProfile.YellowHigh.floatValue - tempHistory.BloodSugar.floatValue) < 0.000001) {
++bellowYellowHigh;
}
if (tempHistory.BloodSugar.floatValue - currentProfile.YellowHigh.floatValue > 0.000001) { // 4 比较 大于
++aboveYellowHigh;
}
}
IOS float类型比较大小
最新推荐文章于 2023-10-12 19:25:24 发布