什么是Object-C,在维基百科里面我们会查到:Objective-C,通常写作ObjC和较少用的ObjectiveC或Obj-C,是在C的基础上,加入面向对象特性扩充而成的编程语言。目前,Objective-C主要应用于MacOSX和iOS这两个NeXTSTEP的派生系统,而在NeXTSTEP和OpenStep中它更是基本语言。Objective-C可以在任何gcc支持的平台上进行编译,因为gcc原生支持Objective-C。通过IOS的成功实现我们可以看到Object-C的强大。下面是我从从过项目中队Object-C的一些认识;
<1>:Object-C基本数据类型:
Objective-C中的基本类型和C语言中的基本类型一样.主要有:int,long,float,double,char,void,bool等.
下面是一些以NS开头的一些数据类型:
那么这些NS开头是什么回事呢,NS****
老乔当年离开苹果,自立门户的时候做了个公司叫做NextStep,里面这一整套开发包很是让一些科学家们喜欢,而现在MacOS用的就是NextStep这一套函数库。
这些开发NextStep的人们比较喜欢把函数库里面所有的类都用NextStep的缩写打头命名,也就是NS****了。比较常见的比如:
NSLog
NSString
NSInteger
NSURL
NSImage
NSNumber
NSNumber是Object-C的数字对象,需要考虑内存释放问题;
下面说说NSString这个数据类型,对于Java开发者来说一看就知道他是Java里面的String字符串,在Java里面我们定义一个String会这样:
StringmyStr=“我是Java里面的String”;
但是在Object-C里面则不同:如下
NSString*myStr=@“我是OC的String”;
对于NSString一些操作也是需要注意:
NSString*szTmp=@"Astring"; //直接赋值
szTmp=nil;
intn=5;
NSString*szMyString=[NSStringstringWithFormat:@"Thenumberis%d",n];
//Thenumberis5
[szMyStringstringByAppendingFormat:@"%d",22];
//附加字符串返回值:Thenumberis522
//但是szMyString本身并没有改变,其值依然:Thenumberis5 ,需要改变自身的时候需要重新的赋值
//字符串转为数组
NSArray*arrayWord=[szMyStringcomponentsSeparatedByString:@""];
//有空格的拆分为单词保存,当然也可以进行其他关键字的拆分,全在自定义;
当然还有其他的好多操作,当你深入的学习Object-C的时候,就会发现Object-C还是一门比较有意思的语言;
<2>下面我们说的是打印处理:
在Java里面我们的打印会这样:
System.out.println(“我是java的打印”);
在Object-C则如此:
打印一个NSString:
NSStringstr=@”我是OBject-C数据”;
NSLog(@“打印数据了%@”,str);
NSLog的格式如下所示:
%@对象
%d,%i整数
%u无符整形
%f浮点/双字
%x,%X二进制整数
%o八进制整数
%zusize_t%p指针
%e浮点/双字(科学计算)
![Object-C基本数据类型小结 js打印object数据类型](http://img.aihuau.com/images/31101031/31044135t016f14bb756624c693.jpg)
%g浮点/双字
%sC字符串
%.*sPascal字符串
%c字符
%Cunicha
r%lld64位长整数
(longlong)%llu无符64位长整数
%Lf64位双字
<3>下面说说数组,很常用的数组
//初始化不可变数组,切记初始化后不可以改变的数组
NSArraymArray=[[NSArrayalloc]initWithObjects:
@"雨松MOMO",
@"15810463139",
@"xuanyusong@gmail.com",
self,nil];
//可以改变的数组
NSMutableArraynsma=mArray;//这里我们直接的赋值;
下面注意的是对数组的遍历,如同java里面一样有一种简单的遍历数组的方法:
遍历方法一:
For(inti=0;i<nsma.count;i++){
NSString*temp=[nsmaobjectAtIndex:i];//这里便是拿出来没一个数据
}
遍历方法二:
//objective-c2.0引入的快速枚举法不仅速度快并且安全性高,推荐使用这种方式来遍历
for(NSString*strinnsma){
NSLog(@"固定数组%@",str);
}
NSMutableArray是一个可以改变数据的数组,提供了两种方法:
addobject方法用于向数组中添加元素
//添加数组
-(void)addArray:(NSObject*)str
{
[mListArrayaddObject:str];
}
removeObject方法用于删除元素
//删除数组
-(void)deleteArray:(NSString*)str
{
[mListArrayremoveObject:str];
}
replaceObjectAtIndex方法可以修改数组中的某一个元素
//修改数组中的元素
-(void)changeArray:(int)ID:(NSObject*)str
{
[mListArrayreplaceObjectAtIndex:IDwithObject:str];
}
insertObject方法用于向数组中插入一个元素
//向数组中插入一个元素
-(void)insertArray:(int)ID:(NSObject*)str
{
[mListArrayinsertObject:stratIndex:ID];
}
这里只是简单介绍几种基本的数据类型,在使用中学习,在学习中使用,学以致用,从而用以致学,希望遇到更多的问题,学习更多的知识。