iOS开发技巧之:iOS判断两个数组中数据是否相同

本文介绍了一种在iOS开发中比较两个数组是否包含相同元素的方法。通过排序和逐项对比实现了数组内容一致性的判断。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IOS开发之判断两个数组中数据是否相同实例详解

前言:

工作中遇到的问题,这里记录下,也许能帮助到大家

实例代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
NSArray *array1 = [NSArray arrayWithObjects:@ "a" , @ "b" , @ "c" , nil nil];
NSArray *array2 = [NSArray arrayWithObjects:@ "b" , @ "a" , @ "c" , nil nil];
bool bol = false ;
  
//创建俩新的数组
NSMutableArray *oldArr = [NSMutableArray arrayWithArray:array1];
NSMutableArray *newArr = [NSMutableArray arrayWithArray:array2];
  
//对数组1排序。
[oldArr sortUsingComparator:^NSComparisonResult(id obj1, id obj2){
   return obj1 > obj2;
}];
 
////上个排序好像不起作用,应采用下面这个
[oldArr sortUsingComparator:^NSComparisonResult(id obj1, id obj2){ return [obj1 localizedStandardCompare: obj2];}];
  
//对数组2排序。
[newArr sortUsingComparator:^NSComparisonResult(id obj1, id obj2){
    return obj1 > obj2;
    }];
////上个排序好像不起作用,应采用下面这个
[newArr sortUsingComparator:^NSComparisonResult(id obj1, id obj2){ return [obj1 localizedStandardCompare: obj2];}];
 
  
if (newArr.count == oldArr.count) {
    
   bol = true ;
   for (int16_t i = 0; i < oldArr.count; i++) {
      
     id c1 = [oldArr objectAtIndex:i];
     id newc = [newArr objectAtIndex:i];
     
     if (![newc isEqualToString:c1];) {
      bol = false ;
      break ;
      }
    }
  }
  
if (bol) { 
   NSLog(@ "两个数组的内容相同!" ); 
else
   NSLog(@ "两个数组的内容不相同!" ); 


原文链接:http://www.jb51.net/article/105227.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值