2019獨角獸企業重金招聘Python工程師標準>>>
今天去面試,被問道NSUserDefaults的存取并手寫出來,一時想不起來,回來之后看看之前的筆記,稍作一些整理
?NSUserDefaults是一個單例,在整個程序中只有一個實例對象,可以用于數據的永久保存,支持的數據類型有NSString、 NSNumber、NSDate、 NSArray、NSDictionary、BOOL、NSInteger等系統定義的數據類型,如果要存放自定義的對象,就必須將其轉換成NSData存儲。 NSUserDefaults單例以 key-value?的形式存儲了,存/取數據時可以使用方法 objectForKey 和 setValue:forKey:來把對象存儲到相應的 plist?文件中,或者讀取。
存儲:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:@“思思”?forKey:@"name"];
[defaults setInteger:10 forKey:@"age"];
UIImage *image =[UIImage imageNamed:@"1.png"];
NSData *imageData = UIImageJPEGRepresentation(image, 100);//把圖片轉化為NSData
[defaults setObject:imageData forKey:@"image"];
讀取
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *name = [defaults objectForKey:@"name"]
NSInteger age = [defaults integerForKey:@"Age"];
NSData *imageData = [defaults dataForKey:@"image"];
UIImage *image = [UIImage imageWithData:imageData];
?
?