IOS-慎用dictionaryWithObjectsAndKeys方法

原文地址:原文地址

有這樣一段代碼:

NSDictionary* items2=[NSDictionary dictionaryWithObjectsAndKeys:

  [d objectForKey:@"GZDBH"],@"工作單編號",

  [d objectForKey:@"LDSJ"],@"來電時間",

  [d objectForKey:@"SLWCSJ"],@"受理完成時間",

  [d objectForKey:@"SLR"],@"受理人",

  [d objectForKey:@"ZJHM"],@"主叫號碼",

  [d objectForKey:@"LXR"],@"聯繫人",

  [d objectForKey:@"LXDH"],@"聯繫電話",

  [d objectForKey:@"BXDZ"],@"報修地址",

  [d objectForKey:@"CLLX"],@"故障類型",

  [d objectForKey:@"JRLX"],@"接入類型",

  [d objectForKey:@"CLQY"],@"處理區域",

  [d objectForKey:@"FWJB"],@"服務級別",

  [d objectForKey:@"JJCD"],@"緊急程度",

  [d objectForKey:@"YXFW"],@"影響範圍",

  [d objectForKey:@"QKMS"],@"受理情況",

  nil];

但是後來發現items2中始終只有一個對象“工作單編號“,檢查後發現,其中“來電時間”對象是空,而dictionaryWithObjectsAndKeys方法在遇到nil對象時,會以爲是最終的結束標誌。於是items中只放了一個對象就初始化結束了,而且不管編譯和運行中都不會報錯,這樣的bug顯然很隱蔽。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章