OC中NSArray
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
/**
* NSArray 数组,可以存储任何类型的OC对象
NSEnumerator,
NSDictionary 字典,键值对
NSSet 数学的集合
*/
//1.如何创建一个NSArray,即初始化
NSArray *names=[NSArray arrayWithObjects:@"张三",@"李四",@"王五", nil];
// NSLog(@"%@",names);
// NSInteger a=[names count];
//2.集合元素的个数
// NSLog(@"元素的个数是=%ld",a);
//3.获取集合的指定下标的元素
// NSString *name=[names objectAtIndex:1];
// NSLog(@"%@",name);
//4.循环遍历
// for (int i=0; i<[names count]; i++) {
// NSString *name=[names objectAtIndex:i];
// NSLog(@"%@",name);
// }
// for (int i=0; i<[names count]; i++) {
// NSLog(@"%@",names[i]);
// }
// 快速枚举
// for (NSString *name in names) {
// NSLog(@"%@",name);
// }
}
return ;
}
把对象变成NSArray输出
#import <Foundation/Foundation.h> @interface Student : NSObject
/**
* 属性,姓名,年龄
*/
@property(strong,nonatomic) NSString *name;
@property(assign,nonatomic) int age;
-(instancetype)initWithName:(NSString *) name andAge:(int) age;
-(void) show;
@end
#import "Student.h" @implementation Student
//@synthesize name,age;
- (instancetype)initWithName:(NSString *)name andAge:(int)age
{
self = [super init];
if (self) {
_name=name;
_age=age;
}
return self;
}
-(void)show{
NSLog(@"%@,%d",_name,_age);
}
/**
* 描述信息方法
*此方法 是 对父类的方法重新实现,返回一个字符串对象,此方法,由对象自动调用
《方法重写》
在父类和子类中相同名称的方法,实现不同
* @return 描述信息
*/
-(NSString *)description{
return [NSString stringWithFormat:@"%@,%d",_name,_age];
}
@end
#import <Foundation/Foundation.h>
#import "Student.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
// Student *stu1=[[Student alloc] initWithName:@"a" andAge:22];
// Student *stu2=[[Student alloc] initWithName:@"b" andAge:21];
// Student *stu3=[[Student alloc] initWithName:@"c" andAge:20];
Student *stu1=[[Student alloc] init];
stu1.name=@"qll";
stu1.age=;
Student *stu2=[[Student alloc] init];
stu2.name=@"zy";
stu2.age=;
Student *stu3=[[Student alloc] init];
stu3.name=@"zyj";
stu3.age=;
//创建集合并添加学生的类型的对象当元素
NSArray *arr=[NSArray arrayWithObjects:stu1,stu2,stu3,nil]; //遍历集合元素 通过快速枚举实现
// for ( Student *a in arr){
//// NSLog(@"%@",[a description]);
// NSLog(@"%@",a);
// } //id identity 标识 任意类型,不用加上 *
for (id stu in arr) {
NSLog(@"%@",stu);
}
}
return ;
}
OC中NSArray的更多相关文章
- OC中NSArray的使用
不可变数组类容器类,管理一组对象类型的数据. 元素是有序的,索引值从0开始 数组中存储的元素必须是对象,类型任意. 创建数组对象,使⽤用实例初始化或便利构造器.获取元素个数.根据索引值获取对 ...
- OC中的NSNumber、NSArray、NSString的常用方法
和C语言不同,在Objective-C语言中,有单独的字符串类NSString.C语言中,string是由 char(ASCLL码)字符组成 OC中,字符串是由unichar(Unicode)字符组成 ...
- OC中Foundation框架之NSArray、NSMutableArray
NSArray概述 NSArray是OC中的数组类 NSArray特点 )只能存放任意OC对象,并且是有顺序的 )不能存放非OC对象,比如int/float/double/char/enum/stru ...
- OC中数组类NSArray的详解,常用属性和方法(一)
数组是一个有序的集合,OC中的数组只能存储对象类型, 但是对于对象的类型没有限制. 通过下标访问数组元素,下标从0开始. NSA
- Oc中的数组
========================== 数组 ========================== 一.认识数组 oc中可以把NSObject对象的子类放到数组这个集合中,但是int.f ...
- OC中的指针
NSError *err = nil; NSError __strong **error = &err; //因为在oc中,通过* *err 创建的指针是用__strong修改的,所以要一致, ...
- [BS-18] 对OC中不可变类的理解
对OC中不可变类的理解 OC中存在很多不可变的类(如NSString,NSAttributedString,NSArray,NSDictionary,NSSet等),用它们创建的对象存在于堆内存中,但 ...
- OC中@property属性关键字的使用(assign/weak/strong/copy)
OC中@property属性关键字的使用(assign/weak/strong/copy) 一.assign 用于 ‘基本数据类型’.‘枚举’.‘结构体’ 等非OC对象类型 eg:int.bool等 ...
- OC中NSDictionary(字典)、NSMutableDictionary(可变字典)、NSSet(集合)、NSMutableSet(可变集合)得常用方法
字典用于保存具有映射关系数据的集合 一个key—value对认为是一个条目(entry),字典是存储key—value对的容器 与数组不同,字典靠key存取元素 key不能重复,value必须是对象 ...
随机推荐
- Android中使用POI加载与显示word文档
最近打算实现一个功能:在Android中加载显示Word文档,当然这里不是使用外部程序打开.查看一些资料后,打算采用poi实现,确定了以下实现思路: 将ftp中的word文档下载到本地. 调用poi将 ...
- forever守护nodejs进程
客户端启动Node.js应用: node app.js # 方法一 npm start # 方法二 Express框架 这样可以正常启动应用,但是如果断开客户端连接,应用也就随之停止了.也就是说这样的 ...
- 简单的session共享的封装
目的 session存储在缓存服务器上(各种缓存服务器上均可,本文以memcached为例),但对开发者来说,他不用关注,只需要调用request.getSession()方法即可获取到session ...
- centos nfs配置--转载
http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-nfs-client-config.html 18.6. NFS Server ...
- Tools - 常用搜索引擎命令
site 用来查询网站收录量. 比如site:http://www.cnblogs.com/ inurl 查URL中包含的元素,比如inurl:bbs ,搜索出URL包含bbs的页面. 常用的inur ...
- LVS使用整理(1)
开始安装LVS 1)下载相关软件包 mkdir -p /home/tools/cd /home/tools/wget http://www.linuxvirtualserver.org/softwar ...
- angular中$cacheFactory缓存的使用
最近在学习使用angular,慢慢从jquery ui转型到用ng开发,发现了很多不同点,继续学习吧: 首先创建一个服务,以便在项目中的controller中引用,服务有几种存在形式,factory( ...
- 连接不上mysqlworkbench问题解决方法
连接mysqlworkbench出现如下提示: 查看ip 加入host的范围 mysql> select user,host from mysql.user;+--------- ...
- Spring基础——在 Spring Config 文件中基于 XML 的 Bean 的自动装配
一.Spring IOC 容器支持自动装配 Bean,所谓自动装配是指,不需要通过 <property> 或 <constructor-arg> 为 Bean 的属性注入值的过 ...
- Scrum4.0+5.0 数独游戏
1.题目: 1.准备看板. 形式参考图4. 2.任务认领,并把认领人标注在看板上的任务标签上. 先由个人主动领任务,PM根据具体情况进行任务的平衡. 然后每个人都着手实现自己的任务. 3.为了团队合作 ...