1 #import <Foundation/Foundation.h> 2 3 int main(int argc, const char * argv[]) 4 { 5 @autoreleasepool 6 { 7 #pragma mark - Test 8 // int a = 10; 9 // double b = 7.7; 10 // float c = 5.7; 11 // 12 // NSNumber *numberInt = [NSNumber numberWithInt:a]; 13 // int a1 = [numberInt intValue]; 14 // 15 // NSNumber *numberDou = [NSNumber numberWithDouble:b]; 16 // double b1 = [numberDou doubleValue]; 17 // 18 // NSNumber *numberFlo = [NSNumber numberWithFloat:c]; 19 // float c1 = [numberFlo floatValue]; 20 // 21 // NSLog(@"numberInt = %d, numberDou = %lf, numberFlo = %f", a1, b1, c1); 22 // 23 // NSString *str1 = @"Welcome"; 24 // NSString *str2 = @"To"; 25 // NSString *str3 = @"HuaShan"; 26 // 27 // NSString *str4 = [[[[str1 stringByAppendingString:@" "] stringByAppendingString:str2] stringByAppendingString:@" "] stringByAppendingString:str3]; 28 // //连接成功 29 // NSLog(@"%@", str4); 30 // 31 // NSString *str5 = [NSString stringWithFormat:@"%@ %@ %@", str1, str2, str3]; 32 // //连接成功 33 // NSLog(@"%@", str5); 34 // 35 // NSString *str6 = [str1 stringByAppendingFormat:@" %@ %@", str2, str3]; 36 // NSLog(@"%@", str6); 37 // 38 // //第一种 39 // NSString *str7 = [str4 substringToIndex:7]; 40 // //第二种 41 // NSRange range = NSMakeRange(0, 7); 42 // NSString *str8 = [str4 substringWithRange:range]; 43 // //第三种 44 // NSArray *arr = [str4 componentsSeparatedByString:@" "]; 45 // NSLog(@"%@ %@ %@", str7, str8, arr[0]); 46 47 #pragma mark - NSNumber 48 // double a = 8.8; 49 // //实例方法:用NSNumber存储基本数据类型 50 // NSNumber *num1 = [[NSNumber alloc] initWithDouble:a]; 51 // //类方法 52 // NSNumber *num2 = [NSNumber numberWithDouble:a]; 53 // NSLog(@"num1 = %@, num2 = %@", num1, num2); 54 // double a1 = [num1 doubleValue]; 55 // double a2 = [num2 doubleValue]; 56 // NSLog(@"a1 = %.2f, a2 = %.2f", a1, a2); 57 // 58 // NSString *str1 = @"Hello World"; 59 // NSString *str2 = @"HuaShan"; 60 // //连接两个字符串 61 // NSString *str3 = [[str1 stringByAppendingString:@" "] stringByAppendingString:str2]; 62 // NSString *str4 = [NSString stringWithFormat:@"%@ %@", str1, str2]; 63 // NSString *str5 = [str1 stringByAppendingFormat:@" %@", str2]; 64 // NSLog(@"str3 = %@, str4 = %@, str5 = %@", str3, str4, str5); 65 // //去下标6之后的字符串 66 // NSString *subStr = [str1 substringFromIndex:6]; 67 // NSLog(@"subStr = %@", subStr); 68 // //取下标5之前的字符串 69 // NSString *subStr1 = [str1 substringToIndex:5]; 70 // NSLog(@"subStr1 = %@", subStr1); 71 // //取一定范围的字符串 72 // NSRange range = NSMakeRange(6, 2); 73 // NSString *subStr2 = [str1 substringWithRange:range]; 74 // NSLog(@"subStr2 = %@", subStr2); 75 // //比较两个字符串,相等返回YES,否则返回NO。 76 // BOOL bb = [subStr isEqualToString:subStr1]; 77 // if (bb) 78 // NSLog(@"相等"); 79 // else 80 // NSLog(@"不相等"); 81 // //查找字符串的range 82 // NSRange range1 = [str1 rangeOfString:@"World"]; 83 // int loc = (int)range1.location; 84 // int len = (int)range1.length; 85 // NSLog(@"loc = %d, len = %d", loc, len); 86 // 87 // //把字符串转成整型 88 // NSString *str6 = @"123"; 89 // int b = [str6 intValue]; 90 // NSLog(@"b = %d", b); 91 // //组件分割字符串 92 // NSString *str7 = @"hello,huashan,welcome,to,huashankeji"; 93 // NSArray *arr = [str7 componentsSeparatedByString:@","]; 94 // NSLog(@"arr[4] = %@", arr[4]); 95 // 96 // NSString *str8 = [str1 stringByAppendingFormat:@" %@", arr[4]]; 97 // NSLog(@"str8 = %@", str8); 98 // //字符串替换出现的字符串 99 // NSString *str9 = [str8 stringByReplacingOccurrencesOfString:@"huashankeji" withString:@"HuaShanKeJi"]; 100 // NSLog(@"str9 = %@", str9); 101 #pragma mark - NSArray 102 // //数组的创建 103 // NSArray *arr = [NSArray arrayWithObjects:@"hello", @"world", nil]; 104 // //输出为:hello, 2, 1, hello, world 105 // NSLog(@"%@, %ld, %ld, %@, %@", [arr objectAtIndex:0], [arr count], [arr indexOfObject:@"world"], [arr firstObject], [arr lastObject]); 106 // NSArray *arr1 = @[@"hello", @"world"]; 107 // NSLog(@"arr1[0] = %@", arr1[0]);//hello 108 // NSLog(@"%@", arr1);//打印出每一个元素 109 #pragma mark - NSMutableArray 110 // //创建出一个动态数组arr2 111 // NSMutableArray *arr2 = [[NSMutableArray alloc] initWithCapacity:1]; 112 // //添加对象(元素) 113 // [arr2 addObject:@"hello"]; 114 // [arr2 addObject:@"world"]; 115 // [arr2 insertObject:@"HELLO" atIndex:1]; 116 // 117 // NSLog(@"%ld", [arr2 indexOfObject:@"world"]);//找到对象的下标2,并打印 118 // NSLog(@"%ld", [arr2 indexOfObject:@"asdf"]);//对象下标为找到,NSNotFound返回一个9223372036854775807 119 //// [arr2 removeObject:@"HELLO"];//删除指定对象 120 //// [arr2 removeObjectAtIndex:1];//删除下标为1的数组元素(对象) 121 //// [arr2 removeLastObject];//删除最后一个对象 122 // [arr2 replaceObjectAtIndex:1 withObject:@"song"];//替换下标为1的对象 123 // NSLog(@"arr2 = %@", arr2); 124 // 125 // //数组的三种遍历 126 // //第一种 127 // long j = [arr2 count]; 128 // for (int i = 0; i < j; ++i) 129 // { 130 // NSLog(@"%@", arr2[i]); 131 // } 132 // [arr2 addObjectsFromArray:arr];//把数组arr添加到arr2数组后面 133 // NSLog(@"%@", arr2); 134 // //第二种 135 // [arr2 addObject:[NSNumber numberWithInteger:18]];//添加一个长整型常量到对象arr2中 136 // for (NSString *str in arr2) 137 // { 138 // NSLog(@"str = %@", str); 139 // } 140 // //第三种 141 // //用NSArray的类方法创建一个新数组 142 // NSArray *arr3 = [NSArray arrayWithObjects:@"1", @"4", @"3", @"2",nil]; 143 // for (id original in arr3) 144 // { 145 // NSLog(@"object = %@", original); 146 // } 147 // 148 // //比较单个常量字符,并排序。注:字符串比较只比首位,数字字符串线转化为NSNumber 149 // NSArray *arr4 = [arr3 sortedArrayUsingSelector:@selector(compare:)]; 150 // for (id result in arr4) 151 // { 152 // NSLog(@"result = %@", result); 153 // } 154 // 155 // NSArray *arr5 = [arr3 sortedArrayUsingSelector:NSSelectorFromString(@"compare:")]; 156 // for (id result1 in arr5) 157 // { 158 // NSLog(@"result1 = %@", result1); 159 // } 160 161 #pragma mark - NSDictionary 162 //字典的两种初始化方式 163 NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"132", @"1", @"527", @"2", nil]; 164 NSString *str = [dic objectForKey:@"2"];//第一种 165 NSLog(@"%@", str);//527 166 //第二种 167 NSDictionary *dic1 = @{@"1":@"132", @"2":@"527"}; 168 NSString *str1 = dic1[@"1"]; 169 NSLog(@"%@", str1);//132 170 //取出字典里所有的键值allValues取出所有的值 171 NSArray *arr = [dic allValues]; 172 NSLog(@"arr = %@", arr); 173 //从所有的键值中一一找到对象 174 NSDictionary *arr1 = [NSDictionary dictionaryWithObjects:arr forKeys:[dic allKeys]]; 175 NSLog(@"arr1 = %@", arr1); 176 #pragma mark - NSMutableDictionary 177 //创造和返回一个空字典 178 NSMutableDictionary *mDic = [NSMutableDictionary dictionary]; 179 [mDic setObject:@"song" forKey:@"1"]; 180 [mDic setObject:@"lei" forKey:@"2"]; 181 [mDic setObject:@"hua" forKey:@"3"]; 182 [mDic setObject:@"shan" forKey:@"4"]; 183 [mDic removeObjectForKey:@"2"]; 184 [mDic removeObjectsForKeys:[NSArray arrayWithObjects:@"1",@"2", nil]]; 185 NSLog(@"mDic = %@", mDic); 186 //字典的快速遍历 187 NSArray *arr2 = [mDic allValues]; 188 for (id object in arr2) 189 { 190 NSLog(@"object = %@", object); 191 } 192 193 } 194 return 0; 195 }