实现中等难度通讯录。需求: 1、定义联系人类AddressContact。实例变量:姓名(拼音,首字母大写)、性别、电话号码、住址、分组名称、年龄。方法:自定义初始化方法(姓名、电话号码)、显示联系人
2014-08-08 22:11
996 查看
<span style="font-size:24px;">// 1、定义联系人类AddressContact。实例变量:姓名(拼音,首字母大写)、性别、电话号码、住址、分组名称、年龄。方法:自定义初始化方法(姓名、电话号码)、显示联系人信息 { NSString *_name;//姓名 NSString *_gender;//性别 NSInteger _phoneNumber;//电话号码 NSString *_location;//住址 NSString *_dividName;//分组名称 NSInteger _age;//年龄 } //初始化方法 - (id)initWithName:(NSString *)name phoneNumber:(NSInteger)phoneNumber; //显示联系人信息 - (NSString *)description; //setter - (void)setDividName:(NSString *)dividName; //getter - (NSString *)name; - (NSInteger)phoneNumber; - (NSString *)dividName; @end @implementation AddressContact //初始化方法 - (id)initWithName:(NSString *)name phoneNumber:(NSInteger)phoneNumber { self = [super init]; if (self) { _name = name; _phoneNumber = phoneNumber; } return self; } //显示联系人信息 - (NSString *)description { return [NSString stringWithFormat:@"name:%@, gender:%@, phoneNumber:%ld, location:%@,dividName:%@, age:%ld", _name, _gender, _phoneNumber, _location, _dividName, _age]; } //setter - (void)setDividName:(NSString *)dividName { _dividName = dividName; } //getter - (NSString *)name { return _name; } - (NSInteger)phoneNumber { return _phoneNumber; } - (NSString *)dividName { return _dividName; } @end<pre name="code" class="objc">int main(int argc, const char * argv[]) { @autoreleasepool { NSArray *arr1 = @[@1,@2,@3]; NSArray *arr2 = @[@1,@2,@3]; BOOL d = [arr1 isEqualToArray:arr2]; NSLog(@"%d",d); //创建对象 AddressContact *Cuichengjie = [[AddressContact alloc] initWithName:@"Cuichengjie" phoneNumber:10086]; AddressContact *Gengzhi = [[AddressContact alloc] initWithName:@"Gengzhi" phoneNumber:100861]; AddressContact *Wangjie = [[AddressContact alloc] initWithName:@"Wangjie" phoneNumber:100862]; AddressContact *Hongjie = [[AddressContact alloc] initWithName:@"Hongjie" phoneNumber:100863]; AddressContact *Xiaoguang = [[AddressContact alloc] initWithName:@"Xiaoguang" phoneNumber:100864]; AddressContact *Xiaoming = [[AddressContact alloc] initWithName:@"Xiaoming" phoneNumber:100865]; AddressContact *Chengcheng = [[AddressContact alloc] initWithName:@"Chengcheng" phoneNumber:100866]; AddressContact *Bug = [[AddressContact alloc] initWithName:@"Bug" phoneNumber:100867]; AddressContact *Bug1 = [[AddressContact alloc] initWithName:@"Bug1" phoneNumber:100868]; AddressContact *Baige = [[AddressContact alloc] initWithName:@"Baige" phoneNumber:100869]; //创建可变数组 NSMutableArray *arrB = [NSMutableArray arrayWithObjects:Bug, Bug1, Baige, nil]; NSMutableArray *arrC = [NSMutableArray arrayWithObjects:Cuichengjie, Chengcheng, nil]; NSMutableArray *arrG = [NSMutableArray arrayWithObjects:Gengzhi, nil]; NSMutableArray *arrH = [NSMutableArray arrayWithObjects:Hongjie, nil]; NSMutableArray *arrW = [NSMutableArray arrayWithObjects:Wangjie, nil]; NSMutableArray *arrX = [NSMutableArray arrayWithObjects:Xiaoguang, Xiaoming, nil]; NSMutableDictionary *conductMan = [NSMutableDictionary dictionaryWithObjectsAndKeys:arrB, @"B", arrC, @"C", arrG, @"G", arrH, @"H", arrW, @"W", arrX, @"X", nil]; NSLog(@"%@", Cuichengjie); //添加联系人对象 AddressContact *Hengming = [[AddressContact alloc] initWithName:@"Hengming" phoneNumber:10087];//要添加的对象 NSString *subString = [[Hengming name] substringToIndex:1];//获取姓名的第一个字母 for (NSString *str in conductMan) { if ([subString isEqualToString:nil] || [@"[Gengming phoneNumber]" isEqualToString:nil ]) { NSLog(@"添加失败"); } else if ([str isEqualToString:subString]){ [[conductMan objectForKey:str] addObject:Hengming]; } for (AddressContact *aa in [conductMan objectForKey:str]) { NSLog(@"%@",aa); } } //从通讯录中根据电话号码搜索联系人 int n = 0; printf("请输入一个电话号码:"); scanf("%d", &n); NSNumber *number = [NSNumber numberWithInt:n]; for (NSString *str in conductMan) { for (AddressContact *aa in [conductMan objectForKey:str]) { NSNumber *num = [NSNumber numberWithInteger:[aa phoneNumber]]; if ([number compare:num] == 0) { NSLog(@"%@", aa); } } } //根据姓名删除某个联系人 char a[15] = " 0"; printf("请输入一个姓名:"); scanf("%s", a); NSString *string = [NSString stringWithFormat:@"%s", a]; for (NSString *str in conductMan) { NSArray *arr = [NSArray arrayWithArray:[conductMan objectForKey:str]]; for (AddressContact *cui in arr) { if ([string compare:[cui name]] == 0) { [[conductMan objectForKey:str] removeObject:cui]; } } } //把删除之后的该数组中的联系人打印出来 NSString *subString1 = [string substringToIndex:1];//获取姓名的第一个字母(对象) for (AddressContact *aa in [conductMan objectForKey:subString1]) { NSLog(@"%@",aa); } //删除某个分组的全部联系人 char b = '0'; printf("请输入一个字符:"); getchar(); scanf("%c",&b); NSString *string1 = [NSString stringWithFormat:@"%c", b]; for (NSString *str in conductMan) { if ([string1 compare:str] == 0) { [[conductMan objectForKey:str] removeAllObjects]; } } } return 0;
相关文章推荐
- 实现中等难度通讯录。需求: 1、定义联系人类AddressContact。实例变量:姓名(拼音,首字母大写)、性别、电话号码、住址、分组名称、年龄。方法:自定义初始化方法(姓名、电话号码)、显示联系人
- //实现中等难度通讯录。需求: //1、定义联系人类Contact。实例变量:姓名(拼音,首字母大写)、性别、电话号码、住址、分组名称、年龄。方法:自定义初始化方法(姓名、电话号码)、显示联系人信息
- 实现简单通讯录操作。 1、定义联系人类AddressPerson。实例变量:姓名、性别、电话号码、住址、分组名称。方法:自定义初始化方法(姓名、电话号码)、显示联系人信息 2、在main.m中定义可变
- 用c语言实现一个通讯录; 通讯录可以存储1000个人的信息,信息包括姓名、性别、年龄、电话、住址 提供方法: 1.添加联系人信息 2.删除指定联系人信息 3.查找指定联系人信息 4.修改指定联系&
- 2.实现一个通讯录; 通讯录可以用来存储1000个人的信息,每个人的信息包括: 姓名、性别、年龄、电话、住址 提供方法: 1. 添加联系人信息 2. 删除指定联系人信息 3. 查找指定联
- 实现一个通讯录; 通讯录可以用来存储1000个人的信息,每个人的信息包括: 姓名、性别、年龄、电话、住址 提供方法: 1. 添加联系人信息 2. 删除指定联系人信息 3. 查找指定
- OC学习之道:在实现通讯录的时候可能需要按姓名的首字母来分组,这里实现的就是把汉字转化为拼音并且是拼音首字母大写
- 实现一个通讯录,可以用来存储1000个人的信息,每个人的信息包括:姓名,年龄,性别,电话,住址
- 创建Employee类,在类中定义三个属性:编号,姓名,年龄,然后在构造方法里初始化这三个属性,最后载实现接口中的定义的CompareTo方法,将对象按编号升序排列。根据已有的代码,补全程序。
- 1、定义普通僵尸类: 实例变量:僵尸种类、僵尸总血量、僵尸每次失血量。 方法:初始化方法(设置僵尸种类,总血量)、被打击失血、死亡。
- PHP基于ICU扩展intl快速实现汉字转拼音及按拼音首字母分组排序的方法
- 仿Android联系人SideBar排序,根据拼音A-Z字母快速导航联系人姓名,以及输入搜索条件过滤,显示姓名的文字图片
- 1.3编程实现从键盘依次输入姓名(字符串)、年龄(整型)、性别(字符)和成绩(浮点型),然后依次显示上述内容
- 第二讲实例变量可见度,set/get方法,自定义初始化(代码) 及description的使用
- 创建一个学生类(Student),包括学号和成绩,编程输入和显示学生的信息,建立一个人类(Person),包含姓名、性别和年龄,并作为学生类的基类
- 创建一个学生类(Student),包括学号成绩,编程输入和显示学生的信息。建立一个人类(Person),包含姓名、性别和年龄,并作为学生类的基类
- 3. 定义一个分数类(Fraction) 实例变量:分子,分母 方法:初始化方法(2个参数),便利构造器,约分,打印,加,减,乘,除。
- 实现读取手机中所有联系人的主要信息(名称和联系电话),并以ListView显示
- 写一方法来实现两个变量的交换。在主调函数中定义两个整型变量,并初始化,调用交换方法,实现这两个变量的交换。(使用ref参数)
- 2、定义路障僵尸类: 实例变量:僵尸种类、僵尸总血量、僵尸每次失血量,道具,弱点。方法:初始化方法(设置僵尸种类,总血量)、被打击失血、失去装备、死亡。