一、NSNumber类
主要是用来将基本数据类型封装为对象
//创建NSNumber对象
NSNumber *monthNumber = [NSNumber numberWithInt:03];
NSNumber *lengthNumber = [NSNumber numberWithFloat:10.9];
NSLog(@"monthNumber is %@", monthNumber);
NSLog(@"lengthNumber is %@", lengthNumber);
//NSNumber对象还原成基本数据类型
int month = [monthNumber intValue];
float length = [lengthNumber floatValue];
NSLog(@"month = %d", month);
NSLog(@"length = %.1f", length);
二、NSString类
//_____________________NSString_____________________
// 创建一个常量字符串
NSString *string1 = @"常量字符串";
NSLog(@"string1 = %@", string1);
// 创建一个空字符串
NSString *string2 = [[NSString alloc] init];
NSString *string3 = [NSString string];
NSLog(@"string2 = %@", string2);
NSLog(@"string3 = %@", string3);
// 快速创建一个字符串 常量区
NSString *string4 = [[NSString alloc] initWithString:@"实例方法快速创建字符串"];
NSString *string5 = [NSString stringWithString:@"类方法快速创建字符串"];
NSLog(@"string4 = %@", string4);
NSLog(@"string5 = %@", string5);
// 创建一个格式化字符串 堆区
NSString *string6 = [[NSString alloc] initWithFormat:@"实例方法创建格式化字符串 number is %d", 10];
NSString *string7 = [NSString stringWithFormat:@"类方法创建格式化字符串 float is %f", 10.8];
NSLog(@"string6 = %@", string6);
NSLog(@"string7 = %@", string7);
// 在常量区所以地址相同
NSString *string8 = [[NSString alloc] initWithString:@"aaa"];
NSString *string9 = [NSString stringWithString:@"aaa"];
// ==比较的是指向的地址
if (string8 == string9) {
NSLog(@"same pointer");
} else {
NSLog(@"different pointer");
}
// 比较字符串的内容
if ([string8 isEqualToString:string9]) {
NSLog(@"same content");
} else {
NSLog(@"different content");
}
三、NSArray类
//_____________________NSArray_____________________
// 数组的创建
NSArray *array1 = [NSArray arrayWithObject:@"one"];
NSArray *array2 = [NSArray arrayWithObjects:@"one", @"two", @"three", nil];
NSArray *array3 = [NSArray arrayWithArray:array1];
NSLog(@"array1 = %@", array1);
NSLog(@"array2 = %@", array2);
NSLog(@"array3 = %@", array3);
// 取数组的长度
int count = [array2 count];
NSLog(@"count = %d", count);
NSArray *array4 = [[NSArray alloc] initWithArray:array2];
NSLog(@"array4 = %@", array4);
// 取数组中指定位置的对象
NSString *string1 = [array2 objectAtIndex:1];
NSLog(@"string1 = %@", string1);
// 将数组组成一个字符串
NSString *string2 = [array2 componentsJoinedByString:@","];
NSLog(@"string2 = %@", string2);
// 判断数组中是否包含指定的对象
BOOL isContain = [array2 containsObject:@"two"];
NSLog(@"isContain : %d", isContain);
// 返回指定对象在数组中的下标
int index = [array2 indexOfObject:@"two"];
NSLog(@"index = %d", index);
// 返回数组中的最后一个对象
NSString *string3 = [array2 lastObject];
NSLog(@"string3 = %@", string3);
///
// 可变数组 NSMutableArray;
NSMutableArray *mutableArray1 = [NSMutableArray arrayWithObjects:@"one", @"two", @"three", nil];
NSLog(@"mutableArray1 = %@", mutableArray1);
[mutableArray1 addObject:@"four"];
NSLog(@"mutableArray1 = %@", mutableArray1);
// 还有一系列的方法 insertObjectAt remove等等
// 在指定位置搜入一个数
[mutableArray1 insertObject:@"four" atIndex:3];
NSLog(@"mutableArray1 = %@", mutableArray1);
// 删除指定的对象
[mutableArray1 removeObject:@"one"];
NSLog(@"mutableArray1 = %@", mutableArray1);
// 替换
[mutableArray1 replaceObjectAtIndex:2 withObject:@"4"];
NSLog(@"mutableArray1 = %@", mutableArray1);
/
// 数组的遍历
// 这种方式遍历效率低
int count1 = [mutableArray1 count];
for (int i = 0; i < count1; i++) {
NSLog(@"elecment : %@", [mutableArray1 objectAtIndex:i]);
}
// 效率高 当不确定对象的类型时,可以将NSString用id代替,用id时不要*
for (NSString *str in mutableArray1) {
NSLog(@"element: --> %@", str);
}