iOS开发中对数组元素进行排序

1688店铺所有商品API接口(整店商品查询API接口) 1688店铺所有商品API接口、1688店铺列表API接口,1688店铺API接口,1688店铺查询商品API接口,1688店铺商品API接口,1688店铺详情接口,1688商品API接口 阅读详情

直接上代码, 请看:

//
//  ViewController.m
//  数组排序
//
//  Created by Wangjunling on 16/4/12.
//  Copyright © 2016年 Wangjunling. All rights reserved.
//

#import "ViewController.h"
#import "Person.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    [self sortFunc1];
    [self sortFunc2];
    
}
//方法1
- (void)sortFunc1 {
     NSArray *arr = @[@2, @9, @334, @66, @5, @15];
    //1.使用系统的Compare方法
    NSArray *sortResultArr = [arr sortedArrayUsingSelector:@selector(compare:)];
    NSLog(@"%@", sortResultArr);
}
//方法2
- (void)sortFunc2 {
    Person *p1 = [Person new];
    p1.name = @"xiaohua5";
    p1.age = 18;
    p1.score = 99;
    Person *p2 = [Person new];
    p2.name = @"xiaohua8";
    p2.age = 18;
    p2.score = 88;
    Person *p3 = [Person new];
    p3.name = @"xiaohua6";
    p3.age = 17;
    p3.score = 77;
    NSArray *personArr = @[p1, p2, p3];
    //2.使用自定义的compare方法, 此方法为block形式,代码简洁直观
    NSArray *sortResultArr = [personArr sortedArrayUsingComparator:^NSComparisonResult(Person *obj1, Person *obj2) {
        NSComparisonResult result = [@(obj1.age) compare:@(obj2.age)];

        if (result == NSOrderedSame) {
            result = [obj1.name compare:obj2.name];
        }
        return result;
    }];
     NSLog(@"%@", sortResultArr);
}
//方法3 通过排序描述器排序, 此方法方便通过某个字段去比较, 在实际开发中最常见
- (void)sortFunc3 {
    Person *p1 = [Person new];
    p1.name = @"xiaohua5";
    p1.age = 18;
    p1.score = 99;
    Person *p2 = [Person new];
    p2.name = @"xiaohua8";
    p2.age = 18;
    p2.score = 88;
    Person *p3 = [Person new];
    p3.name = @"xiaohua6";
    p3.age = 17;
    p3.score = 77;
    NSArray *personArr = @[p1, p2, p3];
    //排序描述:即要排序的字段,
    NSSortDescriptor *descriptor1 = [NSSortDescriptor sortDescriptorWithKey:@"age" ascending:true];
    //排序描述:即要排序的字段,
    NSSortDescriptor *descriptor2 = [NSSortDescriptor sortDescriptorWithKey:@"score" ascending:true];
    //Descriptors参数为数组, 放入要排序的字段, 系统会按照先后顺序排序,
    //上面的p1 p2 p3 先按照年龄排序, 年龄一样的在按照分数排序
    NSArray *sortResultArr = [personArr sortedArrayUsingDescriptors:@[descriptor1,descriptor2]];
    NSLog(@"%@", sortResultArr);
}








- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end



极验验证码: 一点即过验证(鼠标轨迹分析) 2、第一个验证接口分析(第一个w值还原) 3、第二个验证接口(第二个w值还原)这里定位w生成跟上篇文章一样,就不展开了;主要分析tt值(鼠标轨迹)的生成逻辑 阅读详情

相关推荐

MinerU与Docling:智能文档处理框架对比

本文对比分析了MinerU和Docling两大智能文档处理框架。MinerU专注于高精度PDF解析,采用多模态AI技术,在学术文献、金融报表等复杂文档处理上表现优异;Docling则定位企业级多格式文档处理平台,支持10+格式转换,更适合文档管理系统等场景。技术层面,MinerU基于VLM模型实现端到端处理,Docling采用插件化多后端架构。性能测试显示MinerU精度更高(95%+),但资源消耗较大;Docling处理速度更快(1-3秒/页),部署更灵活。

轩哥的个人研究和成长记录 1913

NSArray 排序汇总

IOS几种简单有效的数组排序方法 //第一种,利用数组的sortedArrayUsingComparator调用 NSComparator ,obj1和obj2指的数组中的对象 [plain] view plaincopy NSComparator cmptr = ^(id obj1, id obj2){    if ([obj1 integ

xiaoxuan415315的专栏 2万+

“挑战杯”大赛“揭榜挂帅”赛道-baseline解析

在这个脚本中,txt文件的保存路径为'yolov7/datasets/Fatigue_driving_detection/txt_labels/',而xml文件的路径为'./label_xml/'。标注图片后的产物是会给每一个图片对应生成一个xml格式的文件,但是如果要用yolo框架去训练模型,输入的数据必须是txt格式,因此这里有一步转换格式的过程。注意看:obs这里有三个文件夹,第一个是关键帧的文件夹A,第二个是标注时输出的位置为文件夹B,第三个是智能标注后和手动标注的合集文件夹C。

m0_62899814的博客 2321

iOS 算法(一)--插入排序

前言 插入排序,一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法。插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排序好的有序表中,从一个新的、记录增数的有效序表。在其实现过程使用双层循环,外层循环对除了第一个元素之外的所有元素,内层循环对当前元素前面有序表进行待插入位置查找,并进行一点。 二、排序写法 1、C语言: int main(int argc, const char * argv[]){ int array[] = {49,38, 65, 97, 76,

smileKH的博客 1484

计算机考研复试面试常问问题 数据结构篇(下)

计算机考研复试面试常问问题 数据结构篇(下) 使用前需知(拒绝白嫖,如果对你有帮助,你只需点个赞就行): 注意:有人在闲鱼上盗卖我的资料,而且还有很多同学买了,请各位擦亮双眼,我是整理出来免费分享给大家的! 大家请多点赞和评论,这样后面的同学更容易百度到,不至于被人盗卖,我就不加水印影响大家使用了! 第一次整理,度不好控制,有不好的地方希望大家理解,后面可能会改进,造福今年之后的同学们! ...

程序员宝藏的博客 1万+

【分子指纹】化学分子指纹的概念和应用(非常重要)

分子指纹(Molecular fingerprints)可以低计算成本的方式表示大规模化学数据集中化合物的化学(结构、物理化学等)性质。它们在将化学数据集中的分子转换为适合于计算方法的一致输入格式(bit向量或数值)方面发挥着重要作用。在这篇综述中,

DJJ5210的博客 1万+

iOS把数组中的某个元素置顶

int i = 0; NSMutableArray *array = [[NSMutableArray alloc] init]; for (MySelfPayPackageModel *model in self.dataSource) { if (model.handsel!=0) { i++; [array addObject:model]; // 获取需要顶置的元素 } } ...

qq_33552344的博客 1694

【固态变压器(SST)全维度解析】发展历史、技术、玩家、挑战与数据中心趋势

SST正处于技术突破向规模化商用的关键过渡期,随着SiC/GaN器件降价、标准完善、可靠性数据积累,其在数据中心的渗透率将快速提升。短期(2025 - 2027年)以示范项目为主,中长期(2030年后)有望成为超大规模智算中心的主流供电方案。

昔时扬尘处 2127

iOS开发之数组排序

本文主要介绍iOS中字符串和对象的比较,以及数组的排序

shxwork的博客 977

南方电网专业面试题(电气类-继电保护)(目录)

南方电网专业面试题(电气类-继电保护)(目录) 这些面试题围绕继电保护的基本概念、工作原理、分类、性能要求,以及变压器、断路器、母线保护、自动重合闸等电力系统关键设备的保护机制和操作原则展开,旨在评估应聘者对电力系统保护和控制策略的深入理解和实际应用能力。

weixin_44808274的博客 2159

Echarts - 去掉图表上的横线和竖线

效果图 默认效果: 变为如下图所示效果: 实现方法 官方配置文档:https://echarts.apache.org/zh/option.html#radar.splitLine 在 xAxis yAxis 配置中分别加入以下代码: splitLine: { show:false }

🏆 前端领域优质创作者 1万+

c语言将一个数组随机打乱,iOS开发关于随机数及数组随机取元素,数组随机排序...

iOS开发关于随机数及数组随机取元素,数组随机排序一、随机数产生随机数的四种方法rand()random()arc4random()arc4random_uniform()rand()在标准的C库中 rand() 函数可以生成 0~RAND_MAX 之间的一个随机数,其中 RAND_MAX 是 stdlib.h 中定义的一个整数,它与系统有关。因为 rand() 函数是按指定的顺序来产生整数,因此...

weixin_42496225的博客 972

【一看就会】autoware universe项目结构解析——从一层一层直到control源码

下载安装autoware universe花了一天。下载好之后,按照网上说的跑了一下仿真是能跑的,证明下的代码没问题。然后就得看一下各模块实现的源码了。但是当我打开这些文件的时候。我勒个豆。这么多是个玩意儿。我连该启动哪个launch文件,哪个文件夹是干啥的都不知道。在我慢慢弄懂之后,我也记录这个庞大的项目的各个文件夹和里面的文件以及项目,以及自己使用时应该启动哪些launch文件。这篇文章目的就是通过找到control部分的源码,来帮助我们梳理这个庞大项目的各个文件的功能。

weixin_48386130的博客 2037

iOS开发笔记之元素为字典的数组,按元素的value排序

NSSortDescriptor *des = [NSSortDescriptor sortDescriptorWithKey:@"key" ascending:YES]; NSArray *sortedArr = [array sortedArrayUsingDescriptors:[NSArray arrayWithObject:des]];

zzyeeaa的博客 903

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

iOS开发之把数组中的元素进行随机排序、随机数产生的几种方法

一、先讲下ios三种取随机数的方法: 1.    srand((unsigned)time(0));  //不加这句每次产生的随机数不变         int i = rand() % 5;       2.    srandom(time(0));         int i = random() % 5; 3.    int i = arc4random() % 5 ;

zhonggaorong的专栏 5023

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

ios 替换数组中元素_IOS中数组方法

NSArray 数组的创建1、使用类方法创建 一个空的数组+ (id)array;2、使用类方法创建 只有一个对象的数组+ (id)arrayWithObject:(id)anObject;3、从 c 数组创建一个 NSarray 数以cnt不能超出数组的范围。不然会有数据越界的异常+ (id)arrayWithObjects:(const id [])objectscount:(NSUInte...

weixin_36388201的博客 2940

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

iOS开发分分钟搞定C语言 —— 数组及排序

数组

IOS_龙的博客 932

ios开发数组排序(数组中包括字典)

iphone开发数组排序(数组中包括字典)   1。普通数组排序:      NSMutableArray *arr = [NSMutableArray arrayWithObjects:@"0",@"8",@"6",@"1",nil];      NSArray *sortedArray = [arr sortedArrayUsingComparator:^NS

在路上 1180

iOS:字典数组排序

iphone开发数组排序(数组中包括字典)   1。普通数组排序:      NSMutableArray *arr = [NSMutableArray arrayWithObjects:@"0",@"8",@"6",@"1",nil];      NSArray *sortedArray = [arr sortedArrayUsingComparator:^NSCompar

Sparta-301 866

iOS数组快速排序

对数组元素排序是任何编程语言都会遇到的一个问题,大部分已经提供了一些很方便的排序方法供我们使用,那么iOS开发中有哪些方法可以让我们实现对数组元素快速排序呢? 先定义一个数组,然后对其中元素进行排序: NSArray *originalArray = [NSArray arrayWithObjects:[NSNumber numberWithInt:5],

开发者说 2170

iOS阶段学习第15天笔记(NSArray与NSMutableArray 数组)

iOS学习(OC语言)知识点整理 一、OC中的数组1)数组:也是一个对象,数组中存放的是对象的地址,可以存放任意类型对象的地址,只能是对象不能是具体的数值,数组是有序的, 可以存放重复的元素,数组也分为不可变数组和可变数组. 1、不可变数组NSArray:初始化之后不能修改数组的内容 2、可变数组NSMutableArray:可以随时修改数组的内容(增...

215

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

IOS开发之判断两个数组中数据是否相同实例详解前言:工作中遇到的问题,这里记录下,也许能帮助到大家实例代码:?123456789101112131415161718192021222324252627282930313233343536373839404142434445NSArray *array1 = [NSArray arrayWithObjects:@"a", @"b", @"c", ni...

vkooy的博客 1641

数组排序

iphone开发数组排序(数组中包括字典)   1。普通数组排序:      NSMutableArray *arr = [NSMutableArray arrayWithObjects:@"0",@"8",@"6",@"1",nil];      NSArray *sortedArray = [arr sortedArrayUsingComparator:^NSCo

niejinhao052011的专栏 632

IOS问题汇总:2015-1-9 IOS之NSArray 中调用的方法详解(转)

IOS之NSArray 中调用的方法详解 下面的例子以NSArray *array = [NSArray arrayWithObjects:@“wendy”,@“andy”,@“tom”,@“jonery”,@“stany”, nil];1、获取数组中总共有多少个对象。 -(NSUInteger)count; NSLog(@“%d”,[array count]); 2 2、获取数组中下标对应...

weixin_30905981的博客 107

OC之打乱对象数组

最近在学习ios开发,使用OC语言。 遇到需要打乱对象数组的需求,解决方式如下: - (NSArray *) randomArr:(NSArray *)arr {// 对数组乱序 arr = [arr sortedArrayUsingComparator:^NSComparisonResult(People *p1, People *p2) { //生成0或1 ...

罗毅豪的博客 126
上一篇: 折半法查找数组中指定数字的位置并返回
下一篇: iOS9.+如何用Application统一管理状态栏
wangjunling888
博客等级 码龄11年 24粉丝 78原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值