标签: nsarray

objective-c nsarray to c array

对不起,我甚至不确定怎么问,因为我是C的完全新手,指针和类似的东西.有一个接受参数的函数:char **arg.如果我这样写这个论点:

char *cargs[] = {"blah", NULL};
Run Code Online (Sandbox Code Playgroud)

并将其传递给函数:

function(cargs);
Run Code Online (Sandbox Code Playgroud)

有用.但是...我有一个NSArray,NSStrings我需要从数值中取出这个数组NSArray.我认为这应该是创建一个具有相同元素数量的C数组NSArray并复制字符串,将其转换为cStringUsingEncoding.但老实说,我不知道怎么做,因为我对所有这些指针都很困惑.任何帮助,将不胜感激.

c cocoa nsarray

4
推荐指数
1
解决办法
4983
查看次数

如何在Objective-C中反转NSArray的内容?

如何在Objective-C中反转NSArray的内容?

假设我有一个包含这些数据的数组

NSArray arrayObj = [[NSArray alloc]init];
arrayObj atindex 0 holds this: "1972"
arrayObj atindex 1 holds this: "2005"
arrayObj atindex 2 holds this: "2006"
arrayObj atindex 3 holds this: "2007"

Now i want to inverse the order of array like this:

arrayObj atindex 0 holds this: "2007"
arrayObj atindex 1 holds this: "2006"
arrayObj atindex 2 holds this: "2005"
arrayObj atindex 3 holds this: "1972"
Run Code Online (Sandbox Code Playgroud)

如何实现这个?

谢谢.

objective-c inverse nsarray

4
推荐指数
1
解决办法
2310
查看次数

NSArray,包括一周中的几天和一年中的几个月

有没有办法让我得到一系列(一周中的几天)所以:星期一,星期二,星期三......还有几个月?

我可以手动创建该数组,但我想知道是否有更有说服力的方式来做这个...谢谢.

cocoa-touch objective-c nsarray

4
推荐指数
1
解决办法
853
查看次数

从C数组创建NSArray

有许多线程采用相反的方法,但是我有兴趣从原始C数组转换为NSArray。原因是我想从数组内容创建一个NSString。要创建NSString,我将使用:

NSArray *array;
NSString *stringFromArray = [array componentsJoinedByString:@","];
Run Code Online (Sandbox Code Playgroud)

我用逗号连接数组的元素,因为稍后将字符串保存为.csv文件。我认为这并不重要,但是我要处理的C数组的类型为double,大小为43。

double c_array = new double [43];
Run Code Online (Sandbox Code Playgroud)

谢谢!

c objective-c nsstring nsarray

4
推荐指数
1
解决办法
7938
查看次数

Monotouch如何从C#中的NSArray中检索objectAtIndex

在objectiveC中给出一个包含字符串的NSArray fred,我可以说:

NSString *s = [fred ObjectAtIndex:5];
Run Code Online (Sandbox Code Playgroud)

什么是c#等价物?罗塞塔石头说要使用这种方法ValueAt但是会返回一个IntPtr.

var i = fred.ValueAt(5);
Run Code Online (Sandbox Code Playgroud)

但是你剩下的就是如何将一个转换IntPtr为NSString指针.

c# nsarray

4
推荐指数
2
解决办法
2413
查看次数

Objective-C:不应将getters用于副作用编译器警告

有人可以澄清这里发生的事情.我得到了一个名为:brainModel的类,它又有一个名为:operandStack的NSArray.我只是访问数组发送消息"removeAllObjects"

self.brainModel.operandStack.removeAllObjects;
Run Code Online (Sandbox Code Playgroud)

但是使用点符号它会给我一个警告"未使用属性访问结果 - 不应该使用getter来产生副作用"这究竟是什么意思?

使用这样的嵌套括号语法不会发出警告:

 [[[self brainModel]operandStack]removeAllObjects];
Run Code Online (Sandbox Code Playgroud)

这两个工作顺便说一句......它是否与错误使用点符号有关?或者在传递像这样的消息对象时使用点表示法被认为是一种好习惯 - 发送像"removeAllObjects"这样的参数.

methods objective-c notation nsarray

4
推荐指数
1
解决办法
3211
查看次数

Objective-C:以REVERSE顺序阻止数组的枚举?

有enumerateWithBlockNSArray 的方法,但我需要以相反的顺序枚举,是否有一个块,或者我必须使用for循环,甚至不是快速循环,而是传统的循环for (int i = array.count - 1 ; i >= 0 ; i--)?

谢谢!

objective-c nsarray ios objective-c-blocks

4
推荐指数
2
解决办法
4330
查看次数

NSPredicate数组数组

我有一个数组,打印出来时看起来像这样:

(
        (
        databaseVersion,
        13
    ),
        (
        lockedSetId,
        100
    )
)

是否可以使用NSPredicate(可能通过数组中的索引)对此进行过滤.所以类似于:给我所有行,其中元素0是'databaseVersion'?我知道如果我有一个字典数组,我可以用类似于这里发现的谓词来做这个,但我发现当使用字典并存储大量数据时,我的内存消耗量上升了(从〜80mb到~120mb) ),所以如果可能的话我会保留阵列.有关如何做到这一点的任何建议?

objective-c nsdictionary nsarray nspredicate

4
推荐指数
2
解决办法
3511
查看次数

在等待上一次执行完成时循环通过块

我有一个代码块,它循环遍历一个数组并在其上执行块代码.目前它看起来像这样:

for (NSString *myString in myArray) {

    [self doSomethingToString:myString WithCompletion:^(BOOL completion) {
        string = [NSString stringByAppendingString:@"Test"];
    }];

}
Run Code Online (Sandbox Code Playgroud)

我想在开始下一次迭代之前等待上一次迭代完成.我怎样才能像这样循环一些块代码?

block objective-c nsstring nsarray ios

4
推荐指数
1
解决办法
2175
查看次数

Swift相当于arrayWIthObjects?

这是在Obj C:

NSArray *arr = [NSArray arrayWithObjects:kLMEnglish,nil];
Run Code Online (Sandbox Code Playgroud)

有人能告诉我这行代码的快速等价物.

objective-c nsarray ios swift

4
推荐指数
2
解决办法
3946
查看次数