黑马程序员----OC学习总结--Founation框架
来源:互联网 发布:ubuntu怎么设置输入法 编辑:程序博客网 时间:2024/06/18 03:56
1.常用结构体
在 Founation 框架中 对NSRange NSPoint NSrect NSSize 有了定义
他们常这样被创建:
#import <Founation/Founation.h>
void main(){
@autoreleasepool{
//Range的使用
NSRange rang=NSMakeRange(10,34);//指定一个起止范围
//CGRang rang=CGPiontMake(10,34);//用CGRange也可以定义
NString *str=stringFormRange(rang);//字符串打印
NSLog(@"rang=%@",str);
//Rect的使用
包含 x y width height
NSRect rect=NSMakeRect(2,3,45,32);
//CGRect rect=CGRectMake(2,3,45,32)
NSString *str2=stringFormRect(rect);
}
}
2.NSString 的使用
NSString 不可变字符串 是OC一个对象,需要释放内存,静态方法调用则不用释放
#import <Founation/Founation.h>
void main(){
@autoreleasepool{
NSString *string=[[NSString alloc] init]//创建一个NSString
string=@"fff";
[string release];
NSString *str=[[NSString initWithFormat:@" his age is %i",24];//字符串格式化输出
[str release];
//静态方法调用
NSString *str1=[NSString stringWithString:@"fffff"];
NSString *str2=[NSString stringWithFormat:@"fffff %i",34];
NSLog(@"%@%@",str,str2);
}
}
3.NSMutableString 的使用
是一个可变字符串 也需要管理内存
#import <Founation/Founation.h>
void main(){
@autoreleasepool{
[NSMutableString * str=[[NSMutableString alloc] initWithCapacity:10]//预分配10字数存储空间 提高效率
[str setString:@"ss"];
[str appendString:@"fff"];//拼接字符串
[str appendFormat:@"ffff age is %i and heighe is %2f",23,1,72];//格式化输出
[str release];
}
4.NSArray 不可变 数组
#import <Founation/Founation.h>
void main(){
@autoreleasepool{
NSArray *arr=[NSArray arrayWithObjects:@"jh",@"wk",@"4",@"5",nil];//定义数组
[arr objectAtIndex:2];//取出第三个元素
[arr indexOfObject:@"wk"];//取出角标
[arr lastObject];//取出最后一个元素
[arr count];//提取元素个数
//遍历
int i=0;
for(id ob in arr){
NSLog("%i\t%@",i,obj);
i++;
//排序
NSArray *array=[NSArray arrayWithObjects:@"34",@"4",@"55",@"2",nil]
NSArray *arr2=[array sortedArrayUsingSeletcor:@seletcor(compare:)];//排序好返回一个新数组
NSLog(@"%@",arr2);
}
}
5.NSMutableArray 可变数组
#import <Founation/Founation.h>
void main(){
@autoreleasepool{
NSMutableArray arr=[NSMutableArray array];
[arr addObject:@"ff"];//添加内容
[arr removeObject:@"ff"]//删除内容
Student *s=[[Student alloc] init];
[arr addObject:s]; //retain 一次
[arr removeObject:s]//release 次
[s release];
[arr release]
//数组被释放时会对所有的元素 都做一次release操作
//排序
NSMutableArray arr=[NSArray arrayWithObjects:@"4",@"3",@"5",@"2",nil]
[arr sortUsingSeletcor:@seletcor(compare:)];//排序好返回本身
NSLog(@"%@",array);
}
6.NSDictionary 不可变字典
#import <Founation/Founation.h>
void main(){
@autoreleasepool{
NSDictionary *dict=[NSDictionary dictionaryWithObjectsAndKeys:@"v1",@"v2",@"v3",@"k1",@"k2",@"k3",nil];
id v_= [dict objectForKey:@"k2"];//字典取值 只能取不能改
[dict count];//字典所有元素个数
[dict allValues];//字典所有值 只能取不能改
[dict allKeys];//字典所有Key
//遍历
for(id key in dict){
id value=[dict objectForKey:key];
NSLog(@"%@--%@",key,value);
}
}
7.NSMutableDictionary不可变数组
#import <Founation/Founation.h>
void main(){
@autoreleasepool{
NSMutableDictionary *dit=[NSMutableDictionary dictionary];
[dict setObject:@"v2" forkey:@"k2"];//添加元素
[dict removeAllObjects];//删除所有的键值对
[dict removeObjectForKey@"k2"]//删除key对象的value
//字典销毁时会对每个元素release一次
}
9.NSNumber的 使用
#import <Founation/Founation.h>
void main(){
@autoreleasepool{
NSNumber *n=[NSNumber numberWithInt:100];//将int类型10 包装成NSNumber对象
NSArray *arr=[NSArray arrayWithObject:num];
id num=[arr lastObject];//从数组取出
int n1=[num intValue];//转化成 int类型
NSLog(@"n1=%i",n1);
}
运行结果为:n1=100
10. NSDate 的使用
#import <Founation/Founation.h>
void main(){
@autoreleasepool
NSDate *date=[NSDate date];//创建日期
date=[NSDate dateWithTimeIntervalSinceNow:20]; //返回一个比现在快20 秒的时间
[date distantFuture];//自动返回一个未来遥远的时间
[date distantPast];//随机返回 过去的一个时
NSDateFormatter *format=[[NSDateFormatter alloc] init];
format.dateFormat=@"yyyy-MM-dd HH:mm:ss";// 格式化日期时间
NSString *str=[format stringFromDate:date];//日期格式转化成字符串
NSDate date1=[format dateFromString:@"2008-08-08 07:34:43"];//字符格式转化成日期格式
NSLog(@"str=%@",srt);
NSLog(@"date=%@".date1);
[format release];
}
运行结果:
![黑马程序员OC学习总结--Founation框架 - jianghao.562 - jianghao.562的博客](http://img2.ph.126.net/fkAo_NpVQTeezbFHa-1RdQ==/1485624927179034368.png)
0 0
- 黑马程序员----OC学习总结--Founation框架
- 黑马程序员-OC-Foundation框架总结一
- 黑马程序员---OC基础---Foundation框架学习
- 【黑马程序员-学习笔记】OC-基础知识总结
- 黑马程序员 OC框架: Foundation
- 黑马程序员------OC Foundation框架
- 黑马程序员学习笔记-OC之foundation框架
- 黑马程序员-----oc语言学习笔记之foundation框架-NSString
- 【黑马程序员】java集合框架学习总结
- 黑马程序员_java 集合框架学习总结
- 【黑马程序员】-OC基础知识总结
- 黑马程序员-------OC----self总结
- 黑马程序员-----OC粗略总结
- 黑马程序员——OC学习总结1-5
- 黑马程序员——OC学习总结6-8
- 黑马程序员——OC学习总结9-13
- 黑马程序员——OC学习总结14-16
- 黑马程序员--OC学习笔记
- 1014. 福尔摩斯的约会 (20)
- POJ1651 Multiplication Puzzle ACM解题报告(区间dp)
- A. Mr. Kitayuta's Gift(暴力求加一个字符是否构成回文字符)
- MediaPlayer setDisplay
- 图像滤镜处理算法:柔化、光照、放大镜、哈哈镜
- 黑马程序员----OC学习总结--Founation框架
- iOS 开发——关于App 图标
- Maven学习笔记(三)安装目录分析
- B. Mr. Kitayuta's Colorful Graph( Codeforces Round #286 (Div. 2))
- 1015. 德才论 (25)
- OC笔记 - 类的概念(2015.1.26)
- 二级指针和内存分配问题 形参和实参
- 十二月学习总结
- 图像处理之老照片特效