//
// main.m
// Foundation框架(7)
//
// Created by XinYou on 15-1-20.
// Copyright (c) 2015年 vxinyou. All rights reserved.
//
#import
#pragma mark 派生出新的数组
void arrayNew(){
// 这里创建的数组是不可变的
NSArray *array = [NSArray arrayWithObjects:@"1", @"2", nil];
// 在不可变数组的基础上再加一个元素,形成一个新的数组
NSArray *array2 = [array arrayByAddingObject:@"3"];
// 在不可变数组的基础上再加一个不可变数组,这两个不可变数组形成一个新的数组
NSArray *array3 = [array arrayByAddingObjectsFromArray:[NSArray arrayWithObjects:@"4", @"5", nil]];
NSLog(@"array = %@", array);
NSLog(@"array2 = %@", array2);
NSLog(@"array3 = %@", array3);
NSArray *array4 = [NSArray arrayWithObjects:@"1", @"2", @"3", nil];
NSRange range = NSMakeRange(1, 2);
// 截取不可变数组的一部分,形成一个新的数组
NSArray *array5 = [array4 subarrayWithRange:range];
NSLog(@"array5 = %@", array5);
}
#pragma mark 数组的其他用法
void arrayOther(){
NSArray *array = [NSArray arrayWithObjects:@"1", @"2", @"3", @"4", nil];
// 将不可变数组中的元素用"^"连接起来,形成一个字符串
NSString *str = [array componentsJoinedByString:@"^"];
NSLog(@"str = %@", str);// str = 1^2^3^4
// 将数组写入文件,生成的时xml格式的文件,如果array.xml文件已经存在,会覆盖
NSString *path = @"/Users/xinyou/Desktop/array.xml";
[array writeToFile:path atomically:YES];
// 从文件中读取数组内容(对文件中的内容格式有严格的要求)
path = @"/Users/xinyou/Desktop/array2.xml";
NSArray *array2 = [NSArray arrayWithContentsOfFile:path];
NSLog(@"array2 = %@", array2);
}
int main(int argc, const char * argv[])
{
@autoreleasepool {
// arrayNew();
arrayOther();
}
return 0;
}
array.xml文件内容:
1
2
3
4
array2.xml文件内容:
Jordan
Kobe
James
Rose