如何从 swift 中的字符串值中删除可选?

How to remove optional from a string value in swift?

在代码中,我无法从 lbltotalamount 中的值中删除可选值。 lblTotalAmount 中的值并未从中删除其可选值。 为什么? grandtotal 中的值被可选删除,但是当我将它分配给标签时,它再次 returns 一个可选值。 lblTottalAmount 正在获取一个可选值。我想删除它。

if success == false {
    var  grandtotal: Any?  = value["total"]
    if grandtotal != nil {
        print("O!O!O!O/\(grandtotal!)")
        grandtotal = String(describing: grandtotal)
        self.lblTotalAmount.text = ([grandtotal]) as! String  // (here I am not able to remove optional)
    }

问题出在行

grandtotal = String(describing: grandtotal)

您检查 nil 但您没有解包该值,因此它仍然是可选的。 你在滥用 String(describing。切勿将其用于可以使用 init 方法转换为 String 的类型。

始终使用条件向下转换

if success == false {
   if let grandtotal = value["total"] as? Double {
       self.lblTotalAmount.text = String(grandtotal)
   }
}