Foundation框架内容

1 数字对象

1.      NSNumber:数字对象创建如下:

NSNumber *num, intNum, floatNum;
NSInteger myInt;
 
//integer
intNum = [NSNumber numberWithInteger:10];
myInt = [intNum integerValue];
NSLog("%li",(long)myInt );
 
//float
floatNum = [NSNumber numberWithFloat:10.11];
NSLog("%g",[floatNum floatValue]);
 
//char
num = [NSNumber numberWithChar:'a'];
NSLog("%c",[num charValue]);
 
//double
num = [NSNumber numberWithDouble:1234e+15];
NSLog("%lg",[num doubleValue]);
 
//判断数字是否相等
if( [num isEqualToNumber:floatNum]==YES ){}
 
//判断数字大小
if( [num compare:floatNum]==NSOrderedAscending )  //顺序

NSIntegerNSUInteger不是NS对象,而是typedefNSInteger64long32int

 

2.      初始化方式

 

2 字符串对象

NSString *str = @”hello world”;  
NSLog("%@",str);

NSString 使用@符号表示,并使用”%@”格式化输出,还可以格式化输出其他对象。

 

3 description方法

         “%@”格式化其实是调用的NSObject的description方法,如果没有覆写description方法,只能打印对象的类名和内存地址,NSString已经覆写了description方法。

 

4 不可变字符串

<span style="font-weight: normal;">NSString *str1 = @"hello world A";
NSString *str2 = @"hello world B";
NSString *res;
NSRange *range;
 
//字符串的长度
NSLog("%lu",[str1 length]);
 
//字符串复制到另一个
res = [NSString stringWithString:str1];
NSLog("%@",res);
 
//添加字符串到末尾
str2 = [str1 stringByAppendingString:str2];
 
//判断是否相等
if([str1 isEqualToString:str2]==YES)
 
//转换为大写
res = [str1 uppercaseString];
NSLog("%@", [res UTF8String]);NSString *str1 = @"hello world A";
NSString *str2 = @"hello world B";
NSString *res;
 
//字符串的长度
NSLog("%lu",[str1 length]);
 
//字符串复制到另一个
res = [NSString stringWithString:str1];
NSLog("%@",res);
 
//添加字符串到末尾
str2 = [str1 stringByAppendingString:str2];
 
//判断是否相等
if([str1 isEqualToString:str2]==YES)
 
//转换为大写
res = [str1 uppercaseString];
NSLog("%@", [res UTF8String]);
 
 
//从字符串提取
res = [str1 substringToIndex:3];
 
//从index往后截取
res = [str1 substringFromIndex:5];
 
//截取8到13
res = [str1 substringWithRange:NSMakeRange(8,6)];
 
//查找字符串 获取NSRange对象
range = [str1 rangeOfString:@"hello"]</span>

5 可变字符串

NSMutableString是可变的字符串,继承自NSString。

NSMutableString *mstr;
//创建可变字符串
mstr = [NSMutableString stringWithString:@"hello"];
 
//插入字符串
[mstr insertString:@"world" atIndex:[mstr length];
 
//末尾拼接
[mstr appendString:"world"];
 
//根据范围删除字符串
[mstr deleteCharactersInRange:NSMakeRange(3,3)];
 
//设置字符串
[mstr setString:@"hello world"];
 
//替换字符串
[mstr replaceCharactersInRange:NSMakeRange(1,1) withString:@"1"];

6 数组NSArray

NSArray *week = [NSArray arrayWithObjects:@"mon",@"tue",@"wed",@"thu",@"fri",@"sat",@"sun"];
for(int i=0; i<7; i++){
    NSLog("%@",[week objectAtIndex:i]);
}

7 可变数组

NSMutableArray *nums = [NSMutalbeArray array];
NSNumber *number;
 
for(int i=0; i<10; i++){
    number = [nums addObject:[NSNumber numberWithInteger:i]];
}

8 词典对象dictionary

词典对象类似Java的Map,如下:

NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];
[dictionary setObject:@"字母A" forKey:@"a"];
[dictionary setObject:@"字母B" forKey:@"b"];
 
NSLog("%@",[dictionary objectForKey:@"a"]);
 
NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithObjectAndKeys:
    @"字母A",@"A",@"字母B",@"B"];
for(NSString *key in dictionary){
    NSLog("%@",[dictionary objectForKey:key]);
}
 

9 SET对象

#define INTOBJ(v) [NSNumber numberWithInteger:v];
NSMutalbeSet *set1 = [NSMutableSet setWithObjects:INTOBJ(1),INTOBJ(2),INTOBJ(3),nil];
NSMutalbeSet *set2 = [NSMutableSet setWithObjects:INTOBJ(4),INTOBJ(5),INTOBJ(6),nil];
 
//是否相等
if( [set1 isEqualToSet:set2]==YES )
//是否包含
if( [set1 containsObject:INTOBJ(10)]==YES )
//添加和删除
[set1 addObject:INTOBJ(20)];
[set1 removeObject:INTOBJ(1)];
//获取交集
[set1 intersectSet:set2]
//合并
[set1 unionSet:set2];

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值