由于工作重心发生了改变,Android开发暂时不会继续投入经历。MOMO最近在自学IOS游戏开发 哇咔咔~~目前还在学习阶段此篇文章主要用于备忘,欢迎各位大牛们给我多多虐虐我 互相学习~哇咔咔~~
在xcode中创建项目工程的方法在上一章已经介绍,着一篇主要介绍Objective-C语言中的一些常用数据结构
HelloWorldViewController.m类中
我们的测试语法代码添加在viewDidLoad方法中
1.整型 (int) 浮点型 (float, double) 短长整型(short, long)
常用数据类型与c语言基本一样 难怪是c语言的超集
16 | long long int ll = 123324123234123L; |
20 | NSLog(@"i = %d size = %lu byte ",i, sizeof(i)); |
22 | NSLog(@"f = %f size = %lu byte",f,sizeof(f)); |
24 | NSLog(@"d = %e size = %lu byte",d,sizeof(d)); |
26 | NSLog(@"si = %hi size = %lu byte",si,sizeof(si)); |
28 | NSLog(@"ll = %lli size = %lu byte",ll,sizeof(si)); |
Log打印结果

2.字符串 NSString* 与 char*
06 | NSString * str = @"MOMO"; |
07 | char *c = "15810463139"; |
10 | const char *change = [str UTF8String]; |
13 | NSLog(@"str = %@ size = %lu", str,sizeof(str)); |
14 | NSLog(@"c = %s size = %lu", c, sizeof(c)); |
15 | NSLog(@"change = %s size = %lu", change, sizeof(change)); |
Log打印结果

字符串格式化
使用stringWithFormat 方法来格式化字符串
意思就是将整型 字符型 等等 合并成一个NSString*类型
06 | NSString * str = [NSString stringWithFormat:@"姓名:%@ 年龄:%d 邮箱:%@" ,@"雨松momo",25,@"xuanyusong@gmail.com"]; |
08 | NSLog(@"str = %@",str); |
Log 输出结果

3.布尔值
宏定义 真为YES 假为NO
因为Objective-C 是C语言的超集 所以在代码中写 true 和false 也是可以运行通过的
这里毕竟是Objective-C 所以还是建议使用YES 和 NO
Log打印结果

4 .数组与字典
NSArray 数组: 使用它创建数组后,就不可以继续向这个数组中添加或者删除元素。
这个数组中可以储存任意类型object的对象指针 但是不能用处储存数据类型 比如int bool char 等等
下面这行代码中我将三个字符串和self 指针储存在了mArray这个数组中
2 | mArray =[[NSArray alloc] initWithObjects:@"雨松MOMO",@"15810463139",@"xuanyusong@gmail.com",self,nil]; |
遍历方法一 : 很普遍java 语言 c 语言都这样来遍历
1 | int count = [mArray count]; |
2 | for (int i = 0; i < count; i++) { |
3 | NSLog(@"固定数组 %@", [mArray objectAtIndex:i]); |
遍历方法二: objective-c 2.0 引入的快速枚举法 不仅速度快 并且安全性高,推荐使用这种方式来遍历.
1 | for (NSString * str in mArray) { |
2 | NSLog(@"固定数组 %@", str); |
打印Log信息,最后一项为self指针 ,所以将地址打印了出来。

NSMutableArray数组:它是一个可以变化的数组,数组创建完后还可以动态的向数组中添加与删除元素,并且可以向指定位置插入元素,基本上和链表差不多。
2 | mListArray=[NSMutableArray array]; |
addobject方法用于向数组中添加元素
2 | - (void)addArray: (NSObject *) str |
4 | [mListArray addObject:str]; |
removeObject方法用于删除元素
2 | -(void) deleteArray:(NSString *)str |
4 | [mListArray removeObject:str]; |
replaceObjectAtIndex 方法可以修改数组中的某一个元素
第一个参数为 索引的id
第二个参数为修改对象的指针
2 | -(void)changeArray:(int)ID:(NSObject *) str |
4 | [mListArray replaceObjectAtIndex:ID withObject:str]; |
insertObject方法用于向数组中插入一个元素
第一个参数 插入对象的指针
第二个参数 插入的索引
2 | -(void)insertArray:(int)ID:(NSObject *) str |
4 | [mListArray insertObject:str atIndex:ID]; |
创建MyClass对象
05 | mMyclass = [[MyClass alloc] init]; |
08 | [mMyclass addArray:@"雨松"]; |
09 | [mMyclass addArray:@"宝贝"]; |
10 | [mMyclass addArray:@"MOMO"]; |
11 | [mMyclass addArray:[[MyClass alloc] init]]; |
13 | [mMyclass changeArray:1:@"哇咔咔"]; |
16 | [mMyclass printArray]; |
MyClass.m
03 | @implementation MyClass |
15 | mArray =[[NSArray alloc] initWithObjects:@"雨松MOMO",@"15810463139",@"xuanyusong@gmail.com",self,nil]; |
18 | mListArray=[NSMutableArray array]; |
26 | - (void)addArray: (NSObject *) str |
28 | [mListArray addObject:str]; |
32 | -(void) deleteArray:(NSString *)str |
34 | [mListArray removeObject:str]; |
39 | -(void)changeArray:(int)ID:(NSObject *) str |
41 | [mListArray replaceObjectAtIndex:ID withObject:str]; |
45 | -(void)insertArray:(int)ID:(NSObject *) str |
47 | [mListArray insertObject:str atIndex:ID]; |
54 | for (NSString *str in mArray) { |
55 | NSLog(@"固定数组 %@", str); |
58 | for (NSString *str in mListArray) { |
59 | NSLog(@"可变数组数组 %@", str); |
内容比较少,代码就不上传了 如果代码中有问题还请大家告诉MOMO,我会及时的更正,大家共同学习 哇咔咔~~~