黑马程序员技术交流社区
标题:
学习笔记16:OC基础(3)
[打印本页]
作者:
新生heima
时间:
2015-8-17 23:47
标题:
学习笔记16:OC基础(3)
oc入门注意事项:
1)@interface,@end和@implementation,@end不能嵌套
2)声明和实现语句需要成对出现,即使声明中没有方法
oc是一种弱语法的语句,在使用过程中可能不按照规范也不出错,但是一定要成对写
3)漏写@end
4)多个类的声明和实现是可以打乱的,但是声明一定要在实现之前写
5)方法的声明不能写在{}里面
6)声明时,不能对成员变量初始化,成员变量不能脱离对象独立存在
7)成员变量要写在{}里面
8)方法不能像函数那样调用
9)成员变量和方法不要用static等关键字修饰,OC中有单独的关键字
10)声明要现在对象使用之前,实现可以写在使用之后
报错的两个明显标志:
1)程序没有退出
2)程序停到一行,显式绿色,开头是:Thread
调用没有实现的方法,是会报错的!!!一定记得去实现定义的方法
对象和方法的关系:
1)对象作为方法的参数:
-(返回值类型)方法名:(类名 *)参数名称;
2)对象作为方法的返回值:
-(类名 *) 方法名:(类名 *)参数名称;
对象作为方法的参数连续传递:
一个对象中可以在成员变量里声明另一个类的对象,这样另一个类的对象就称为自己的成员变量。当然本类中也可以让它类作为自己方法的参数传递进来,在实现该方法的时候,传递进来的它类可以调用它类的方法。这样就完成了使用本类的对象让它类的对象完成一件事。比如士兵使用抢,抢射击。枪类可以作为士兵方法的参数,在该方法中,枪类可以调用抢设计的方法。
当方法中有多个参数时,还可以通过第一个类参数调用该类的方法,而该方法就是需要第二个类参数的。这样第二个类参数完成了两次传递。
NSString类的常见用法:
NSString是OC中常见处理字符串的类之一(还有NSMutableString等)
1)特殊用法:
NSString * s1=@"AAAAA";
2)正规用法:
NSString *s2=[NSString new];
s2=@"BBBB";
3)第三种方式,格式化创建字符串(按照指定的格式创建字符串)
for(int i=1;i<5;i++)
{
NSString *imgName = [NSString stringWithFormat:@"XXXXXX%02d.jpg",i];
NSLog(@"%@",imgName);
}
打印出的是:
XXXXXX01.jpg
XXXXXX02.jpg
XXXXXX03.jpg
XXXXXX04.jpg
4)用一个已经存在的字符串创建新的字符串
NSString *s2=[[NSString alloc] initWithString:s1];
创建的s2和s1的内容一样
NSString类的长度计算方法:
通过NSString类的对象方法length可以获得字符串的长度。
NSUInteger len= [s1 length];//其实返回值是无符号整型的
OC中 中英文都占用1个字符
C语言中UTF-8编码,一个汉字占3字节,
NSString *s1=@"语言";
char *s2="语言";
len =[s1 length]; //len是2
len1=strlen(s2); //len1是6
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2