遍历数组、数组排序

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
    //数组中建议存储同类型的数据元素

    NSArray * array = @[@"one",@"two",@"three"];
    for (int i = 0; i < array.count; i++) {
        NSString * str = array[i];
        NSLog(@"array[%d] = %@",i,str);
    }
    //使用增强for循环遍历数组
    for (NSString * str in array) {
        NSLog(@"%@",str);
    }

    return 0;
}
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{

        NSArray * array = @[@"1",@"2",@"3",@"4"];
        NSLog(@"before sort%@",array);

        //排序
        NSComparisonResult  cmp = [@"a" compare:@"b"];
        //
        NSLog(@"%d",cmp);
        array = [array sortedArrayUsingSelector:@selector(compare:)];
        //正序 左边小于右边

        NSLog(@"after sort %@",array);

        //(void)(^block)(int a ,int b);
        NSArray * arry1 = [array sortedArrayUsingComparator:^NSComparisonResult(id obj1,id obj2)
        {
            return [obj1 compare:obj2];
        }];
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-14 15:58:26

遍历数组、数组排序的相关文章

iOSDay16之集合遍历和数组排序

1.集合遍历 1> 遍历 集合(Collection):OC中提供的容器类:数组,字典,集合. 遍历:对集合中元素依次取出的过称叫做遍历. 三种方式:① for循环遍历: ② NSEnumerator遍历: ③ for...in遍历 2> for循环遍历 ① 数组遍历 原理:通过for循环的循环变量用作数组元素下标来获取不同下标的元素. 循环次数就是数组元素的个数. 1 // 数组 2 for (int i = 0; i < arr.count; i++) { 3 NSLog(@&quo

JAVA基础(数组)数组排序和查找数组中是否还有某一个数

数组排序和数组中含有某一个数 import java.util.Arrays;class Demo4 { public static void main(String[] args) { //数组中的使用工具:Arrays int[] arr = {1,2,4,5}; //查找数组中是否还有某一个数 int num = 3; //有 : 对应索引位置 int result = Arrays.binarySearch(arr,num); System.out.println(result); //

vue遍历数组和对象的方法以及他们之间的区别

前言:vue不能直接通过下标的形式来添加数据,vue也不能直接向对象中加值,因为那样即使能加入值页面也不会跟着改变 一,vue遍历数组 1,使用vue数组变异方法 pops 删除数组租后一项 push 往数组里面增加一项 shift 删除数组第一项 unshift 往数组第一项里面加一线内容 splice 数组截取 sort 数组排序 reverse 对数组取反 2,数组的引用 3,vue set方法 二,vue遍历对象 1,对象引用 2,set方法 由于时间问题下回仔细说明,谢谢 原文地址:h

笔试算法题(07):还原后序遍历数组 &amp; 半翻转英文句段

出题:输入一个整数数组,判断该数组是否符合一个二元查找树的后序遍历(给定整数数组,判定其是否满足某二元查找树的后序遍历): 分析:利用后序遍历对应到二元查找树的性质(序列最后一个元素必定是根节点,从左向右第一个比根节点大的元素开始直到根节点之前的所有元素必定在右子树,之前的所有元素必定在左子树): 解题: 1 bool PostOrderCheck(int *array, int i, int j) { 2 /** 3 * 如快速排序一样,解决小子文件 4 * */ 5 if(j-i+1 ==

foreach ()语法结构提供了遍历数组的简单方式

foreach 语法结构提供了遍历数组的简单方式.foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息.有两种语法: foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statement 第一种格式遍历给定的 array_expression 数组.每次循环中,当前单元的值被赋给 $value 并且数组内部的指

JavaScript中遍历数组 最好不要使用 for in 遍历

先看一段代码 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 </head> 7 <body> 8 9 <script> 10 // 一个普通的数组 11 var arr =[3,5,2,6]; 12 // 普通

C#遍历数组

Eg: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace ConsoleApplication1 7 { 8 class Program 9 { 10 static void Main(string[] args) 11 { 12 //声明数组. 第一种方法. 声明并分配元素大小. 13 int[] Myint = new int[

Java中forEach, 用来遍历数组

这里的for是Java中forEach, 用来遍历数组的.for(int i : d) 就是遍历int型数组d的 每一次访问数组d的时候读取的数据放入int型的i中.和for(int i=0;i<d.length();i++)是一样的,但是forEach的可用场合较多. public class e1 {public static void main(String[] args){ int[]d=new int[] {1,2,3,4,64,1234,3124,657,22}; System.ou

(算法)是否为二叉查找数的后序遍历数组

题目: 给定一数组,判断它是否为二叉查找树的后序遍历数组 思路: 想想,二叉查找数树的特点,任意根结点大于左子树的所有值,而小于右子树的所有值: 再想想,后序遍历的特点,先遍历左子树,再遍历右子树,最后是根结点: 因此很容易找到根结点,然后遍历数组找出左子树(从左往右比根结点小的),剩下右边的就是右子树,然后判断右子树是否都大于根结点: 如果是,则递归遍历左子树,遍历右子树,如果都满足了,则是某个二叉树的后序遍历数组: 如果不是,则不是. 代码: #include<iostream> usin