使用大量if else语句的更有效方法

时间:2019-03-21 19:34:47

标签: swift if-statement

我正试图迅速做到这一点,我想知道是否有更有效的方法:

.title a {
  font-size: 150px;
  line-height: 1px;
  text-decoration: none;
  font-family: 'Inknut Antiqua', serif;
 }

if语句还有很多。有人有解决方案吗?

3 个答案:

答案 0 :(得分:0)

您可以将不同类型的if语句合并为方法。

例如

main() {
   yearsTotal += accountForSmoke()
   yearsTotal += accountForSleep(yearsTotal)
}

func accountForSmoke() -> Double {
   return doesSmoke ? -7.5 : 0
}

func accountForSleep(_ yearsTotal: Double ) -> Double {
  if hoursSleepAvg < 7 {
    return -yearsTotal / 100.0
  }
  if hoursSleepAvg > 8 {
    return -yearsTotal / 100.0
  }
}

答案 1 :(得分:0)

您可以使用三元运算符来简化此操作。

yearsTotal = yearsTotal - (doesSmoke ? 7.5 : 0)
yearsTotal = (hoursSleepAvg < 7 || hoursSleepAvg > 8) ? (yearsTotal - yearsTotal / 100.0) : yearsTotal

答案 2 :(得分:0)

为尽可能简化逻辑:

if (doesSmoke){
   yearsTotal -= 7.5
}

if hoursSleepAvg < 7 || hoursSleepAvg > 8 {
   yearsTotal *= 0.99
}

但是,逻辑非常值得怀疑。显然,hoursSleepAvg等于7.00且等于7.99时不会产生相同的效果。