gpt4 book ai didi

ios - 在 iOS 中从数组中获取重复项和原始项

转载 作者:行者123 更新时间:2023-11-29 00:23:11 25 4
gpt4 key购买 nike

我有一个数组,如

(约翰,简,约翰)

我想得到重复项,以及像这样的数组的原始元素

(约翰,约翰)我能够从代码中获得单次出现这里

NSArray *names = [NSArray arrayWithObjects:@"John", @"Jane", @"John", nil];
NSCountedSet *set = [[NSCountedSet alloc] initWithArray:names];

for (id item in set)
{
NSLog(@"Name=%@, Count=%lu", item, (unsigned long)[set countForObject:item]);
if((unsigned long)[set countForObject:item]>1){
NSLog(@"of repeated element-----=%@",item);
}
}

“重复元素的名称-----约翰”,但我想要重复元素的所有出现,例如“重复元素的名称-----约翰,约翰”。

最佳答案

试试这个使用 NSPredicate:

NSArray *array = [NSArray arrayWithObjects:@"John", @"Jane", @"John",@"Jane",@"Jane", nil];
NSMutableArray *arrResult = [[NSMutableArray alloc] init];
NSCountedSet *set = [[NSCountedSet alloc] initWithArray:array];
for(id name in set)
{
if([set countForObject:name] > 1 ){
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF = %@", name];
[arrResult addObjectsFromArray:[array filteredArrayUsingPredicate:predicate]];
}
}
//
NSLog(@"%@",arrResult);

关于ios - 在 iOS 中从数组中获取重复项和原始项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43798167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com