一、NSNumber类
注:NSNumber类主要用来封装基本类型,通俗理解就是把基本类型放入到数组或者集合中。
#@import <Foundation/Foundation.h>
int main(int argc, const charchar * argv[]){
@autoreleasepool{
//1 -- 封装
NSNumber * intNumber = [NSNumber numberWithInt:3];
NSUumber * floatNumber = [NSNumber numberWithFloat: 9.8f];
NSArray * array = @[intNumber, floatNumber];
//1.2 -- 解包
int value = [intNumber intvalue];
float values = [floatNumber floatValue];
NSString * str = [intNumber stringValue];
//封装的优化语句
NSNumber * intNumbers =@12;
//2 -- 使用NSValue类将结构体进行封装,后存入到数组中
NSRange range = {1, 3};
NSValue * v =[NSValue valueWithRange:rang];
NSArray * array = @[v];
rang = [v rangeValue];
//3 -- 对自定义的结构体
//3.1 --封包
struct WXPoint{
float x;
float y;
};
struct WXPoint p = {50,100};
NSValue * v1 = [NSValue value: *p withObjectType:@encode(struct WXPoint)];
//3.2 -- 解包
struct WXPoint p1;
[v1 getValue:&p1];
}
}
二、NSDate类
注:这个类是操作日期的类
#@import <Foundation/Foundation.h>
int main(int argc, const charchar * argv[]){
@autoreleasepool{
//1 -- 获取当前时间 -- NSDate方法
NSDate * date = [NSDate date];
NSDate * date1 = [[NSDate alloc]init];
NSLog(@"%@", date);
//2 -- 时间戳:某个日期到1970年之间的一个差值
date1 = [NSDate dateWithTimeIntervalSinceNow:1000];
//3 -- 创建一个日期,然后拿到时间戳,也就是得到当前时间的一个差值
NSDate * now = [NSDate date];
NSTimeInterval interval = [now timeIntercalSince1970];
interval = [now timeIntervalSinceNow];
//4 -- 日期的比较 -- compare方法
NSComparisonResult result = [date compare:date1];
if(result == NSOrderedAscending){
//大于
}else if(result == NSOrderedDescending){
//小于
}else{
等于
}
//5 -- 日期格式化
NSDateFormatter * dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setDateFormat :@"yyyy-MM-dd HH:mm:ss"];
NSString * str = [dateFormatter stringFromDate:date];
NSLog(@"%@", str);
//6 -- 设置时区
NSTimeZone * timeZone = [NSTimeZone timeZoneWithName:@"Aerica/New_Tork"];
[dateFormatter setTimeZone:timeZone];
//7 -- 将字符串转化成日起对象
NSString * str = @"2013年12月12日 16:31:13";
[dateFormatter setDateFormat:@"yyyy年MM月dd日 HH:mm:ss"];
date1 = [dateFormatter dateFromString:strs];
}
}
三、NSExcetion类
注:这个用于捕获异常,增加程序的健壮性
#import <Foundation/Foundation.h>
int main(int argc, const charchar * argv[]){
@ autoreleasepool{
@try{
int a = 1/0;
}@catch(NSException * exception){
}@finally{
}
}
return 0;
}