代码之家  ›  专栏  ›  技术社区  ›  fisherM

二进制运算符“<=”不能应用于“Float”类型的操作数和“双”

  •  2
  • fisherM  · 技术社区  · 7 年前

    我这里有个错误

     if car.rating <= 1.0 {
    
            }
    

    评级为 var rating: Float?

    我要怎么做才能解决它?

    1 回复  |  直到 7 年前
        1
  •  2
  •   sundance    7 年前

    有两种变体可用于展开选装件。您可以检查选项是否可以展开:

    if let rating = car.rating, rating <= 1.0
    

    if car.rating != nil && car.rating! <= 1.0
    

    或者可以使用nil合并运算符定义默认值 ?? :

    if car.rating ?? 0 <= 1.0
    

    我希望这有助于了解optionals在各种条件下的工作方式。