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