/* 实现中等难度通讯录。需求: 1、定义联系人类Contact。实例变量:姓名(拼音,首字母大写)、性别、电话号码、住址、分组名称、年龄。方法:自定义初始化方法(姓名、电话号码)、显示联系人信息 <span style="font-family: Arial, Helvetica, sans-serif;">2、在main.m中定义字典,分组管理所有联系人。分组名为26个大写的英文字母。 3、可以添加联系人对象,如果姓名或电话号码为空,添加失败。添加联系人到匹配的分组。 4、获取某个分组名称下所有联系人,并且按照姓名升序排列。 5、从通讯录中根据电话号码搜索联系人。 6、获取所有女性的联系人,并且按照电话的降序排列。 7、根据姓名删除某个联系人。 8、删除某个分组的全部联系人。*/</span>
/*
题目如上 这是一道基于Objective_C的题目 相信好多学过OC的人都做过这个 ;
为了提高自己对代码的熟练度,思路更加清晰,同时也为了刚入OC的小白们能够对代码更透彻的理解 ,注释打的很是详细
下面分享以下我的代码
*/
//以下是代码的 main.m部分
<pre name="code" class="objc"><span style="font-family: Arial, Helvetica, sans-serif;">#import <Foundation/Foundation.h></span>
#import "Contact.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
//创建联系人
Contact *contact1 = [Contact contactWithName:@"W二丫" tel:1582305 ];
Contact *contact2 = [Contact contactWithName:@"W小东" tel:135];
Contact *contact3 = [Contact contactWithName:@"E张三" tel:2222];
Contact *contact4 = [Contact contactWithName:@"X李四" tel:3333];
[contact3 setSex:@"女"];
contact1.sex = @"女";
// 2、在main.m中定义字典,分组管理所有联系人。分组名为26个大写的英文字母。
NSLog(@"==============================2==============================");
//将联系人 统一放到数组中 方便操作
NSMutableArray *contantArray = [NSMutableArray arrayWithObjects:contact1,contact2,contact3,contact4, nil];
//定义 一个通讯录字典 按分组保存联系人
NSMutableDictionary *contactBookDictionary = [[NSMutableDictionary alloc ] init];
//取出联系人 一个一个把他放在字典中
for (Contact * contact in contantArray) {
//让每一个Contact执行 增加方法 (Contate.m)
contactBookDictionary = [contact addContact:contactBookDictionary];
}
//查看一下 是否添加成功
//遍历通讯录