标签: nsarray

obj-c NSArray计数比较失败

NSArray *test1 = [NSArray arrayWithObjects:@"1",@"2", nil];
NSArray *test2 = [NSArray arrayWithObjects:@"1",@"2", nil];
NSArray *test3 = [NSArray arrayWithObjects:@"1",@"2", nil];

NSLog(@"%d", [test1 count] == [test2 count] == [test3 count]);
Run Code Online (Sandbox Code Playgroud)

会打印0.为什么?

comparison objective-c count nsarray

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

对NSArray进行排序

我有一个NSArray如下:

NSArray *directoryContent = [[NSFileManager defaultManager] directoryContentsAtPath:filePath];
Run Code Online (Sandbox Code Playgroud)

filePath上的文件是:

11.thm,12.thm,13.thm,...,Text_21.thm,Text_22.thm,Text_23.thm,...

我想按顺序对NSArray进行排序:

13.thm,12.thm,11.thm,...,Text_23.thm,Text_22.thm,Text_21.thm,...

我该如何实现这一目标?

arrays sorting iphone filenames nsarray

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

Objective-C arrayWithPlist(已经在NSString中)

我有一个已包含pList的NSString.

我如何将其变成NSArray?(没有将其保存到磁盘,只能使用arrayWithContentsOfFile重新加载它,然后必须删除它.)

make arrayWithPlist或arrayWithString方法在哪里?(或者我将如何制作自己的?)

 NSArray *anArray = [NSArray arrayWithPlist:myPlistString];
Run Code Online (Sandbox Code Playgroud)

iphone objective-c plist nsstring nsarray

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

NSArray如何实现NSCopying协议

我猜它执行浅拷贝.但是,如果是这种情况,它如何影响阵列中的对象?

memory-management objective-c nsarray ios

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

根据不同的分隔符将NSString拆分为单独的字符串

示例字符串:

NSString * exampleString = 
@""
 "#--- delimiter2 ---"
 "bla,"
 "bla,"
 "bla"
 "#--- delimiter2 ---"
 "yoip,"
 "yoip,"
 "yoip"
 "#--- delimiter3 ---"
 "etc,"
 "etc,"
 "etc,"
 "etc,"
 "etc,"
 "etc,"
 "etc";
Run Code Online (Sandbox Code Playgroud)

我想取一个数组并将其填充为:

[anyArray objectAtIndex:0] = @"bla,bla,bla"

[anyArray objectAtIndex:1] = @"yoip,yoip,yoip"

[anyArray objectAtIndex:2] = @"etc,etc,etc,etc,etc,etc,etc"
Run Code Online (Sandbox Code Playgroud)

如果这是有道理的......

任何帮助,将不胜感激 :)

谢谢

nsarray ios

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

为什么不[NSArray类]返回我的预期?

我试图通过Web服务解析一些JSON.逻辑是:

id jsonObject = ....;      //This can be string or array 

if([jsonObject class] == [NSString class] || [jsonObject class] == [NSMutableString class]{

// DO some thing
}
else if([jsonObject class] = [NSArray class] || [jsonObject class] == [NSMutableArray class]{

// Do some thing else
}
Run Code Online (Sandbox Code Playgroud)

然而,对于其中一个元素,我遇到了一个奇怪的问题.这个元素的类应该是NSArray,但是当我运行代码时,我将该类视为__NSArrayM.这与第二个if块不匹配.

有人可以告诉我我做错了什么

iphone parsing nsarray

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

iOS - 如何正确访问数组中的对象属性?

建立:

ViewController拥有一个MyArray物体PersonClass. PersonClass只有两个属性:name和age.

问题:

当我想name从第一个对象中读出一个属性时,MyArray正确的方法是什么?

我是否必须暂时创建这样的实例PersonClass?

PersonClass *tmp = [PersonClass alloc] init];
tmp = [MyArray objectAtIndex:0];

NSLog(@"%@", tmp.name);
Run Code Online (Sandbox Code Playgroud)

或者是否可以直接参考properties的objects在MyArray?

像这样的东西:

 NSLog(@"%@", [self.contactsArray objectAtIndex:0].name); // not working
Run Code Online (Sandbox Code Playgroud)

iphone properties nsarray ios ivar

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

如何循环自定义对象的NSArray

我从CoreData fetch中创建了一个NSArray,如下所示:

self.farSiman = [self.managedObjectContext executeFetchRequest:request error:&error];
Run Code Online (Sandbox Code Playgroud)

在tableview中,我使用此代码来获取自定义对象:

Holiday *holiday = [self.dates objectAtIndex:indexPath.row];
cell.nameLabel.text = holiday.name;
Run Code Online (Sandbox Code Playgroud)

但是我现在在另一个viewcontroller中,试图在mapkit上绘制数据,所以在绘图方法中我最初这样做是因为我从plist文件中获取了一个数组.但现在我的数组是自定义Holiday对象,所以这不再起作用了:

NSLog(@"dictionary is %@", self.farSiman);

for (NSDictionary * dict in self.farSiman) {


    NSNumber * latitude = [dict objectForKey:@"latitude"];
    NSNumber * longitude = [dict objectForKey:@"longitude"];
    NSString * storeDescription = [dict objectForKey:@"name"];
    NSString * address = [dict objectForKey:@"address"];
    NSLog(@"logging location %@", storeDescription);
    CLLocationCoordinate2D coordinate;
    coordinate.latitude = latitude.doubleValue;
    coordinate.longitude = longitude.doubleValue;
    MyLocation *annotation = [[MyLocation alloc] initWithName:storeDescription address:address coordinate:coordinate];
    [_mapView addAnnotation:annotation];

}
Run Code Online (Sandbox Code Playgroud)

我的字典日志打印出来:

dictionary is (
"<Holiday: …
Run Code Online (Sandbox Code Playgroud)

enumeration objective-c nsarray ios

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

NSDiction的NSArray - 按字典值过滤并返回唯一的数组对象

所以假设我有一个NSArray填充了数百个NSDictionary对象.

所有字典对象都具有键的值,name但这些值名称可能在不同对象中出现多次.

我需要能够过滤这个NSArray只返回每个唯一name属性一个对象(无论哪个对象,第一个或最后一个,我不在乎).

这是我有多远,但显然我的filtered数组包含所有对象而不是唯一的对象.

我认为必须有一种方法可以告诉谓词将结果限制为只有一个/第一个匹配?

NSArray *allObjects = ... // This is my array of NSDictionaries                                                                                              
NSArray *uniqueNames = [allObjects valueForKeyPath:@"@distinctUnionOfObjects.name"];
NSArray *filtered = [allObjects filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"(self.name IN %@)", uniqueNames]];
Run Code Online (Sandbox Code Playgroud)

谢谢!

objective-c nsdictionary nsarray

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

获取Objective-C中指定类的NSArray的所有对象

我有一个包含可能不同类的对象的数组,例如:

NSArray *multiClassArray = @[@"foo", @42, @"bar"];
Run Code Online (Sandbox Code Playgroud)

我想得到一个新数组,其中包含multiClassArray其类的所有对象,比如说NSString.

有没有比循环每个项更优雅的方法multiClassArray,检查它的类,并适当地将它存储在一个新的数组中?

objective-c nsarray

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