------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
什么是框架
框架是由许多类、方法、函数、文档按照一定的逻辑组织起来的集合,是开发程序更加容易。在OS X 下的Mac 操作系统中大约有80个框架为所有程序开发奠定基础的框架称为Foundation 框架。
Foundation框架的作用
Foundation框架是Mac \iOS中其他框架的基础
Foundation框架包含了很多开发中常用的数据类型: 结构体 枚举 类
NSString 介绍和基本使用
NSString *str = @"abcd"; //这种写法,字符串存储在内存的常量区
<span style="font-size:12px;">
NSString *str2 = [NSString stringWithFormat:@"----->:%@",@"rose"];
NSLog(@"%@",str2);
</span>
//这种方式存储在内存的堆区写入文件中
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSString *str = @"abcd";
//错误对象
NSError *err;
[str writeToFile:@"/Users/Y_sir/Desktop/abcd.txt" atomically:YES encoding:NSUTF8StringEncoding error:&err];
if (err != nil) {
NSLog(@"write in defeated");
}else{
NSLog(@"write in successed");
}
}
return 0;
}
</span>
从文件中读取
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
//错误对象
NSError *err;
NSString *str = [NSString stringWithContentsOfFile:@"/Users/Y_sir/Desktop/abcd.txt" usedEncoding:NSUTF8StringEncoding error: &err];
if (err!= nil) {
NSLog(@"write in defeated");
}else{
NSLog(@"write in successed");
NSLog(@"str = %@",str);
}
}
return 0;
}</span>
NSURL 读写字符串
url (uniform resource locator) 统一资源定位符
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSString *str = @"heelo world";
//NSURL 写入文件
// NSURL *url = [NSURL URLWithString:@"file:///Users/Y_sir/Desktop/url.txt"];
NSURL *url = [NSURL fileURLWithPath:@"/Users/Y_sir/Desktop/url1.txt"];
if ([str writeToFile:url atomically:YES encoding:NSUTF8StringEncoding error:nil]) {
NSLog(@"write in succsessed !");
}else{
NSLog(@"write in defeated !");
}
NSString *str1 = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
NSLog(@"%@",str1);
}
return 0;
}
</span>
NSMutableString 的使用
NSMutableString继承自NSString 。NSMutableString 好比一个字符串链表,他可以任意动态的在字符串中添加字符 删除字符 指定位置插入字符。
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSString *str2 = [NSString stringWithFormat:@"----->:%@",@"rose"];
NSLog(@"%@",str2);
NSMutableString *str = [NSMutableString string ];
//使用 appendFormat 格式化添加字符串 //appendString
[str appendFormat:@"hello world"];
NSLog(@"%@",str);
//使用 deleteCharactersInRange 删除一部分内容
[str deleteCharactersInRange:NSMakeRange(2, 2)];
NSLog(@"%@",str);
//使用 insertString 插入字符串
[str insertString:@"asdf**" atIndex:4];
NSLog(@"%@",str);
//使用 replaceCharactersInRange 替换字符串的一部分内容
[str replaceCharactersInRange:NSMakeRange(2, 5) withString:@"123"];
NSLog(@"%@",str);
}
return 0;
}</span>
NSArray 的介绍和基本使用
NSArray是OC中的数组类
NSArray的使用注意
1)只能存放任意的OC对象,并且是有序的(有序的下标)
2)不能存放非OC对象,比如 int \float \double \char \enum \struct \
3)是不可变的,一旦初始化完毕,内容就是固定的
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSArray *array = [NSArray array];
NSLog(@"%@",array);
//一个对象
NSArray *array1 = [NSArray arrayWithObject:@"1"];
NSLog(@"%@",array1);
//多个对象
NSArray *array2 = [NSArray arrayWithObjects:@"ere",@"44",@"dsfdsfsdfsdf", nil];
NSLog(@"%@",array2);
NSArray *array3 = [[NSArray alloc] initWithObjects:@"fd",@"dfdfd",@3, nil];
NSLog(@"%@",array3);
}
return 0;
}
</span>
NSArray 的使用
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSArray *array = @[@1,@"3",@"gjhgj"];
NSString *str =[array objectAtIndex:2];//按下标取出每个对象
NSLog(@"%@",str);
}
return 0;
}
</span>
NSDictionary的介绍和使用
NSDictionary 一般叫做“字典”
NSDictionary 的作用与字典类似: 通过一个key,就能找到相应的value
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
//创建一个空字典
NSDictionary *dic = [NSDictionary dictionary];
NSLog(@"%@",dic);
//只有一个键值对的字典
NSDictionary *dic1 = [NSDictionary dictionaryWithObject:@"value" forKey:@"key"];
NSLog(@"%@",dic1);
//只有多个键值对的字典
NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys:@"value1",@"key1",@"value2",@"key2" ,nil];
NSLog(@"%@",dic2);
//快速创建字典
NSDictionary *dic3 = @{@"key1":@"12",@"key2":@"34",@"key3":@"45"};
NSLog(@"%@",dic3);
//获取字典的长度
NSLog(@"%lu",dic3.count);
//根据key值取出value值
NSString *str = [dic3 objectForKeyedSubscript:@"key1"];
NSLog(@"%@",str);
//字典的遍历
for (NSString *key in dic3) {
NSLog(@"key = %@, value = %@",key,[dic3 objectForKeyedSubscript:key]);
}
[dic3 enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
NSLog(@"%@----->%@",key,obj);
}];
}
return 0;
}
</span>
NSDictionary的简写
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSDictionary *dict = @{@"key1":@"11",@"key2":@"22",@"key3":@"33"};
NSLog(@"%@",dict[@"key1"]);
//写入文件
BOOL write = [dict writeToFile:@"/Users/Y_sir/Desktop/dictionary.xml" atomically:YES];
if (write) {
NSLog(@"write in successed");
}else{
NSLog(@"write in defeated");
}
}
return 0;
}
</span>
NSMutableDictionary 的介绍和使用
NSMutableDictionary 是NSDictionary 的子类
NSMutableDictionary是可以改变的,可以随时向里面添加 \更改\ 删除元素
NSDictionary 和 NSArray 的区别:
1)NSArray 是有序的,NSDictionary 是无序的
2)NSArray 是通过下标访问元素的,NSDictionary 是通过key来访问元素
<span style="font-size:12px;">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
//创建
NSMutableDictionary *mdict = [NSMutableDictionary dictionary];
NSMutableDictionary *mdict1 = [NSMutableDictionary dictionaryWithCapacity:4];
[mdict setValue:@"21" forKey:@"key1"];
[mdict setValue:@"34" forKey:@"key2"];
[mdict setValue:@"67" forKey:@"key3"];
NSLog(@"%@",mdict);
//删除
[mdict removeObjectForKey:@"key1"];
NSLog(@"%@",mdict);
//删除所有
// [mdict removeAllObjects];
// NSLog(@"%@",mdict);
//修改
[mdict setObject:@"24242" forKey:@"key2"];
NSLog(@"%@",mdict);
//查找
NSArray *array = [mdict allKeys];
if ([array containsObject:@"key2"]) {
NSLog(@"cunzai");
}else{
NSLog(@"bu cunzai");
}
}
return 0;
}</span>
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------