objective-c - 基础篇 - NSNumber与NSdate与NSExcetion

一、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;

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值