用枚举器遍历数组倒序输出数组

//下边的例子可以把数组元素逆序输出

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSArray *array = @[@"1",@"a",@"c",@"e"];
        NSEnumerator *unum;
        unum = [array reverseObjectEnumerator];
        id obj;
     while(obj = [unum nextObject])
     {
         NSLog(@"%@",obj);
     }
    }
    return 0;
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//下边可以比较数组中的数字的大小 并且排序后输出

NSArray *array = @[@"19",@"7",@"3",@"4",@"5",@"8"];
        NSArray *sortedArray = [array sortedArrayUsingComparator: ^(id obj1, id obj2) {
            
            if ([obj1 integerValue] > [obj2 integerValue]) {
                return 1L;
            }
            
            if ([obj1 integerValue] < [obj2 integerValue]) {
                return -1L;
            }
            return 0L;
        }];
        NSLog(@"%@",sortedArray);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

   //使用Seltor来选择比较数组

NSArray *array22 = @[@1,@2,@13,@12,@23];
        NSArray *resultArray1 = [array22 sortedArrayUsingSelector:@selector(compare:)];
        NSLog(@"%@",resultArray1);

时间: 2024-10-23 08:58:38

用枚举器遍历数组倒序输出数组的相关文章

将一个有序数组倒序输出

拿到有个题目对于初学者来说不能直接写代码程序:因为如果没有完全理解其中的思想写起来是很困难的,首先我们要学会分析问题,然后给出解题方法. 下面我将以一个实例进行解释说明:代码如下: package Demo; public class ArrayDaoXu {/** * 数组的倒序输出 * @param args */ public static void main(String[] args) { // TODO 自动生成的方法存根 int arr[]={1,2,3,4,5,6,7,8,9};

OC字典存入数组,输出数组中数据,并且删除小明一项,然后进行排序、现根据班级排序,班级相同的用年龄进行排序

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { NSDictionary *[email protected]{@"name":@"小阳", @"class":@"IOS8", @"age":@"20" }; NSDictionary

JAVA 键盘输入数组,输出数组内容和最大值、最小值

package shuzu; import java.util.Scanner; public class shuzu { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int[] a = new int[5];  //定义数组 Scanner scanner = new Scanner(System.in); //键盘输入 System.out.p

ios 数组倒序和数组转字符串

NSMutableArray *array = [NSMutableArray arrayWithObjects:@"1",@"2",@"3",nil]; NSArray* reversedArray = [[array reverseObjectEnumerator] allObjects]; NSLog(@"%@",reversedArray); NSArray *array1 = [NSArray arrayWithOb

链表的倒序输出

链表的倒序输出,我们可能想到的方法就是把链表翻转后然后再遍历一遍,这样的话时间复杂度是O(n),但是缺点是代码稍微复杂.或者是开辟一个数组,顺序遍历一个链表把元素复制到数组里面,最后再把数组倒序输出.其实这道题目时间复杂度都不可能低于O(n),但是考虑用栈的话代码就可能非常简单,代码如下所示: #include <iostream> using namespace std; struct Node { int key; Node* next; }; Node* createList(int a

枚举器和可枚举类型

枚举器和可枚举类型 前面我们已经知道了使用foreach语句可以遍历数组中的元素.但是为什么那么做呢? 原因是数组按需提供了一个叫做枚举器的对象.枚举器可以依次返回请求数组中的元素. 枚举器知道项的次序并且跟踪它所在序列中的位置,然后返回请求的当前项. 获取一个对象枚举器的方法是调用对象的GetEnumerator方法.实现GetEnumerator方法的类型叫做可枚举类型. 数组是可枚举类型. IEnumerator接口 实现了IEnumerator接口的枚举器包含3个函数成员:Current

Java实现字符串倒序输出的几种方法

1. 最容易想到的估计就是利用String类的toCharArray(),再倒序输出数组的方法了. import javax.swing.JOptionPane; public class ReverseString { public static void main (String args[]){ String originalString; String resultString = ""; originalString = JOptionPane.showInputDialog

升序或降序数组的倒序输出

其实数组倒序输出相对来说还是挺简单的,因为数组已经是有序的了,所以只要循环然后压入一个新数组即可. 也许你会这样写: function backSort (arr) { var finalArr = []; for (var i = arr.length - 1; i >= 0; i --) { finalArr.push(arr[i]); } return finalArr; } console.log(backSort([1,2,3,4,5])); 而没有对数组这种push操作的java,可

Java基础知识强化08:将字符串倒序输出(包括空格)的几种方法

1.最容易想到的估计就是利用String类的toCharArray(),再倒序输出数组的方法了: 1 package himi.hebao05; 2 3 public class TestDemo02 { 4 public static void main(String[] args) { 5 int i = 0; 6 String text = "hebao I love you!"; 7 String result = " "; 8 char[] charArr