假设我有三个数组。
NSArray *array1 = @[@"4",@"3",@"2"];
NSArray *array2 = @[@"2",@"1"];
NSArray *array3 = @[@"3",@"1",@"5",@"2"];
我想附加这些数组。条件是:
- 顺序不应改变。也就是说,Array1 的顺序比 Array2 有更高的优先级。
- 应该删除重复值(当附加 Array2 和 Array1 时,我想从 Array2 中删除重复值)
所以我希望这样的结果:
@[@"4",@"3",@"2",@"1",@"5"];
问题:
- 我是否应该迭代每个值来构建预期结果?有什么简单的方法可以实现吗?
谢谢
最佳答案
您可以使用 NSMutableOrderedSet
来实现这一点:
NSMutableOrderedSet *mSet = [NSMutableOrderedSet new];
[mSet addObjectsFromArray:array1];
[mSet addObjectsFromArray:array2];
[mSet addObjectsFromArray:array3];
NSArray *array = [mSet array];
关于ios - 在 objective-c 中追加数组并删除重复项而不更改顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37059910/