#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 ;
}

最新文章

  1. Struts2 JQuery UI常用插件
  2. VC++ CArchive及简单的文件操作方法
  3. 基于流的自动化构建工具------gulp (简单配置)
  4. [SHELL进阶] (转)最牛B的 Linux Shell 命令 (四)
  5. qt 4.6.2 与visual studio 2005 集成(编译方法,以及中间遇到的问题)
  6. C++构造/析构/赋值函数
  7. hdu1102 Constructing Roads (简单最小生成树Prim算法)
  8. 如何测试私有 Private/Internal 方法
  9. 前端开发的使用服务器环境开源项目 D2Server 可替代Apache
  10. spring-mvc @Controller 200-不生效
  11. 新手在WindowsServer2016上安装ExchangeServer2016时的几点注意要点。
  12. (转)Linux文件系统的实现
  13. Illustration of Git branching and merge
  14. 【转载】什么是Windows USB设备路径,它是如何格式化的?
  15. 微软BI 之SSAS 系列 - 多维数据集维度用法之二 事实维度(退化维度 Degenerate Dimension)
  16. elasticsearch日志删除命令
  17. https方式下 git push 每次都要输入密码的解决办法
  18. java的HashSet 原理
  19. sklearn 算法大全
  20. python Linux flask uwsgi nginx 在centos7.3部署

热门文章

  1. 高手详解SQL性能优化十条建议
  2. DDD:Repository和UnitOfWork的生命周期问题
  3. 红黑树(二)之 C语言的实现
  4. EPANET头文件解读系列8——FUNCS.H
  5. (二)Protobuf的C#使用
  6. WPF学习之深入浅出话命令
  7. ToDoList:一款非常优秀的任务管理软件 —— 工具类
  8. PHP框架中最喜欢的WindFramework
  9. Java多线程--wait(),notify(),notifyAll()的用法
  10. PHP学习笔记:keditor的使用