rac 数组之遍历

Posted 110-913-1025

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rac 数组之遍历相关的知识,希望对你有一定的参考价值。

rac的数组遍历其实很简单。但是有个点需要注意。

以下先举个例子说明遍历的用法

 NSArray *temArr = @[@"111",@"222"];
    [temArr.rac_sequence.signal subscribeNext:^(RACTuple * _Nullable x) {
        NSLog(@"%@",[NSThread currentThread]);
        NSLog(@"---数组遍历----%@",x);
    }];

以下是日志:

<NSThread: 0x281cb4340>{number = 4, name = (null)}

2019-11-16 11:29:26.322717+0800 NewProjectToTest[4289:1922998] ---数组遍历----111

2019-11-16 11:29:26.323227+0800 NewProjectToTest[4289:1922998] <NSThread: 0x281cb4340>{number = 4, name = (null)}

2019-11-16 11:29:26.323333+0800 NewProjectToTest[4289:1922998] ---数组遍历----222

 

很明显能看到代码不是在主线程中执行的。这样会导致我们在实际使用过程中需要考虑代码的执行问题。

所以我们在遍历的时候可以通过deliverOn把这个任务添加到主线程中,代码如下

[[temArr.rac_sequence.signal deliverOn:[RACScheduler mainThreadScheduler]] subscribeNext:^(id  _Nullable x) {
        NSLog(@"=====%@",[NSThread currentThread]);
        NSLog(@"--3333-数组遍历----%@",x);
    }];

显示日志如下:

=====<NSThread: 0x281cde040>{number = 1, name = main}

2019-11-16 11:29:26.331387+0800 NewProjectToTest[4289:1922792] --3333-数组遍历----111

2019-11-16 11:29:26.331451+0800 NewProjectToTest[4289:1922792] =====<NSThread: 0x281cde040>{number = 1, name = main}

2019-11-16 11:29:26.331489+0800 NewProjectToTest[4289:1922792] --3333-数组遍历----222

 

差不多就这样吧。。很简单的使用。。

 

以上是关于rac 数组之遍历的主要内容,如果未能解决你的问题,请参考以下文章

js数组遍历方法总结

NC41 最长无重复子数组/NC133链表的奇偶重排/NC116把数字翻译成字符串/NC135 股票交易的最大收益/NC126换钱的最少货币数/NC45实现二叉树先序,中序和后序遍历(递归)(代码片段

Java数组的--遍历

GMSMarker 信息窗口内容(片段)未更新

Jquery 遍历数组之grep()方法介绍

Jquery遍历数组之$.inArray()方法介绍