新建一個純swift file文件
代碼:
import Foundation
import UIKit
extension NSArray{
//檢查index是否超過總大小
func stringAtCheckedIndex(index:NSInteger) -> (String){
if self.count <= index {
return ""
}else if index < 0 {
return ""
}else{
return self.object(at: index) as! (String)
}
}
//檢查index是否超過總大小
func objectAtCheckedIndex(index:NSInteger) -> (AnyObject){
if self.count <= index {
return "" as (AnyObject)
}else if index < 0 {
return "" as (AnyObject)
}else{
return self.object(at: index) as (AnyObject)
}
}
}
extension NSDictionary{
//檢查key是否存在
func objectForCheckedKey(key:AnyObject)-> (AnyObject){
let object = self.object(forKey: key)
if object == nil? {
return "" as (AnyObject)
}
return object as (AnyObject)
}
func stringForCheckedKey(key:String)-> (AnyObject){
let object = self.object(forKey: key)
if object is String? {
return object as (AnyObject)
}
if object is NSNumber{
return object as (AnyObject)
}
return "" as (AnyObject)
}
}
使用方法:
let a:NSMutableArray = ["1","3","4"];
let c = a.stringAtCheckedIndex(index: 2)
let b = a.stringAtCheckedIndex(index: 8)
let d:NSDictionary = ["三國演義":1,"水滸傳":"施耐庵","紅樓夢":"曹雪芹","西游記":"吳承恩"];
let e = d.stringForCheckedKey(key: "三國演義")
let r = d.stringForCheckedKey(key: ("123"))
這樣,取下列為8,字典鍵123的值為空也不會崩潰。