당신은 다양한 데이터 유형에 대한 전무는 null을 확인하는 NilCheck 컨트롤러를 만들 수 있습니다. 예를 들어 사전에서 null을 제거하고 Userdefaults에 사전 배열을 저장하는 함수를 만들었습니다. 쿼리 :
func removeNilAndSaveToLocalStore(array : [[String:Any]]) {
var arrayToSave = [[String:Any]]()
for place in array {
var dict = [String:Any]()
dict["AreaId"] = NilCheck.sharedInstance.checkIntForNil(nbr: place["AreaId"]! as? Int)
dict["AreaNameAr"] = NilCheck.sharedInstance.checkStringForNil(str: place["AreaNameAr"]! as? String)
dict["AreaName"] = NilCheck.sharedInstance.checkStringForNil(str: place["AreaName"]! as? String)
dict["GovernorateId"] = NilCheck.sharedInstance.checkIntForNil(nbr: place["GovernorateId"]! as? Int)
arrayToSave.append(dict)
}
LocalStore.setAreaList(token: arrayToSave)
}
class NilCheck {
static let sharedInstance : NilCheck = {
let instance = NilCheck()
return instance
}()
func checkStringForNil(str : String?) -> String {
guard let str = str else {
return String() // return default string
}
return str
}
func checkIntForNil(nbr : Int?) -> Int {
guard let num = nbr else {
return 0 // return default Int
}
return num
} }
값은 또한 리터럴 문자열이 될 수를 물어 주시기 바랍니다' ""' –
vadian
이 같은 문자열' ""'와 비교할 수'endTime- 사용자 [ "END_TIME"만약 ] == "" –
"NSNull"(값이있는 경우)이 아닌 경우 end_time 형식입니다. –