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

结果值在'?:“表达式的类型“()”和“字符串”不匹配?”

  •  1
  • sk123  · 技术社区  · 6 年前

    我不知道我在这里做错了什么,我基本上是在检查一个值是否返回零,然后填充 UILabel 使用标准数字,或者如果返回值,我将填充 UILabel公司 有价值。

    account.agent.ddi == "" || account.agent.ddi == nil ? self.ddiLabel.text = "02039909000" : self.ddiLabel.text =  account.agent.ddi
    
    2 回复  |  直到 6 年前
        1
  •  2
  •   David Rönnqvist    6 年前

    因为你要分配给 self.ddiLabel.text 在这两种情况下,您都可以将分配与 ?: 操作,使返回类型 String 在这两种情况下

    ddiLabel.text = account.agent.number == "" || account.agent.ddi == nil ? "02039909000" : account.agent.ddi
    
        2
  •  1
  •   Shehata Gamal    6 年前

    对于没有 ()

    account.agent.ddi == "" || account.agent.ddi == nil ? ( self.ddiLabel.text = "02039909000" ) : ( self.ddiLabel.text =  account.agent.ddi)