1.数组一定是可变数组
2.把交换的两个元素的index值要知道
3.把两个元素的值赋值给常量(不能用改变后的数组里的值)
题目:交换数组array中 index1?和index2?对应的元素?的位置
NSMutableArray * array = [[NSMutableArray alloc]initWithObjects:@"A",@"B",@"C",@"D", nil];
这里已知两个元素的index 为 index1和index2
??id string1 = array[index1];
??id string2 = array[index2];
string1的值为B,sting2的值为 C
替换元素
交换第一步:将string2替换到index1的位置,此步得到的结果为[A,C,C,D];
[array replaceObjectAtIndex:index1 withObject:string2];
交换第二部:将string1替换到index2的位置,此步得到的结果为[A,C,B,D];
[array replaceObjectAtIndex:index2 withObject:string1];
这样就完成了index1 和index2 的元素互换位置
错误的写法为:
[array replaceObjectAtIndex:1 withObject:array[2]];
[array replaceObjectAtIndex:2 withObject:array[1]];