時,我有陣列的字典中推斷:通用參數「元素」不能添加到陣列
var myDict : [String:[SomeObj]] = [:]
來填充它,我嘗試將值正確的索引處添加到陣列中。如果數組不存在,它失敗,我提出一個新的數組索引:
if myDict[key]?.append(val) == nil {
myDict[key] = [val]
}
我想我應該能縮短這:
myDict[key]?.append(val) ?? myDict[key] = [val]
然而,而是我得到的錯誤:Generic parameter 'Element' could not be inferred
。爲什麼?
您正在使用'nil-coalescing'來達到錯誤目的。不要將它們用於___什麼,它只是起作用的原因。 – nayem
@nayem你能詳細說明一下嗎?爲什麼這是錯的? – GoldenJoe