我目前正在使用NSMutableArrays我的开发来存储从HTTP Servlet获取的一些数据.
一切都很好,因为现在我必须对我的数组中的内容进行排序.
这就是我做的:
NSMutableArray *array = [[NSMutableArray arrayWithObjects:nil] retain];
[array addObject:[NSArray arrayWithObjects: "Label 1", 1, nil]];
[array addObject:[NSArray arrayWithObjects: "Label 2", 4, nil]];
[array addObject:[NSArray arrayWithObjects: "Label 3", 2, nil]];
[array addObject:[NSArray arrayWithObjects: "Label 4", 6, nil]];
[array addObject:[NSArray arrayWithObjects: "Label 5", 0, nil]];
Run Code Online (Sandbox Code Playgroud)
第一列包含Label,第二列是我希望数组按降序排序的分数.
我存储数据的方式是好的吗?有没有更好的办法做到这一点比使用NSMutableArrays的NSMutableArray?
我是iPhone开发人员的新手,我看过一些关于排序的代码,但对此并不满意.
提前感谢您的回答!
这是我的数据结构:
group [1...n] {
id,
name,
elements : [1...n]
}
Run Code Online (Sandbox Code Playgroud)
我为具有所有属性的元素定义了一个类,为group定义了一个类:
@interface Group : NSObject {
NSInteger groupID;
NSString *groupName;
NSMutableArray *elements;
}
@property (assign, readwrite) NSInteger groupID;
@property (assign, readwrite) NSString *groupName;
@property (assign, readwrite) NSMutableArray *elements;
Run Code Online (Sandbox Code Playgroud)
和单个元素:
@interface Element : NSObject {
NSInteger elementID;
NSString *elementName;
}
@property (assign, readwrite) NSInteger elementID;
@property (assign, readwrite) NSString *elementName;
Run Code Online (Sandbox Code Playgroud)
这两个类都有属性和综合.当应用程序启动时,我在数据结构上插入数据:
arrGroup = [NSMutableArray array];
[arrGroup retain];
Element *element1 = [[Element alloc] init];
element1.elemenID = 1;
element1.elemenName = @"Andrea";
Element *element …Run Code Online (Sandbox Code Playgroud) 我正在编写一个包含一个函数的iPhone应用程序.它可以将NSMutableArray转换为CSV文件.但是,我不知道该怎么做.任何人都可以帮我这样做吗?非常感谢你.
// ------更新-----
谢谢大家的回复.
实际上,数组包含元素的对象,但是我可以将它全部修改为数组,如下所示(我想这样做更容易).
该数组是NSMutableArray*csvArray,该数组包含数据,如下例所示.
csvArray[0] = First Name
csvArray[1] = Last Name
csvArray[2] = Phone
csvArray[3] = Tom
csvArray[4] = Chan
csvArray[5] = 123
csvArray[6] = Peter
csvArray[7] = Wong
csvArray[8] = 456
csvArray[9] = Mary's
csvArray[10] = Cho"w
csvArray[11] = 789...
Run Code Online (Sandbox Code Playgroud)
阵列的开头有3个选项卡,分别是名字,姓氏和电话.对于数据,它还包含"和符号.因此,我不能只用','符号来切割数组.
我想输出的格式如下
//---------------------------
First Name, Last Name, Phone // <- it have the \r\n between each row of data
Tom, Chan, 123
Peter, Wong, 456
Mary's, Cho"w, 789 ...
//---------------------------
Run Code Online (Sandbox Code Playgroud) NSKeyedArchiver的参数是archivedDataWithRootObject:应该是我要保存的数组,还是转换为NSData的数组?
cocoa-touch objective-c nsmutablearray nskeyedarchiver nsdata
(IBAction)adicionarPastas:(id)sender {
AbreBrowser *abre = [[AbreBrowser alloc] init];
NSMutableArray *arquivosRecebe = [[NSMutableArray alloc] initWithArray:[abre abreBrowser]];
[abre release];
[arquivos addObjectsFromArray:arquivosRecebe];
[arquivosTableView reloadData];
[arquivosTableView setDataSource:self];
}
Run Code Online (Sandbox Code Playgroud)
好吧,arquivos在这个文件头上声明为:
NSMutableArray *arquivos;
Run Code Online (Sandbox Code Playgroud)
[abre abreBrowser]确实会回归一个NSArray.
我的问题[arquivos addObjectsFromArray:arquivosRecebe];不起作用.我也试过addObject,它给了我相同的结果,即没有.
当我喂这样的arquivos时:
arquivos = [abre abreBrowser];
Run Code Online (Sandbox Code Playgroud)
有用.但是,当我做一个[arquivos addObject:Object]或[arquivos addObjectsFromArray:NSArray]它没有喂我的NSMutableArrayarquivos.
有人能告诉我我做错了什么吗?
从NSMutableArray中删除时出现以下错误
-[__NSArrayI removeObjectAtIndex:]: unrecognized selector sent to instance 0x1cdced10
2011-07-13 00:33:14.333 MassText[1726:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI removeObjectAtIndex:]: unrecognized selector sent to instance 0x1cdced10'
Run Code Online (Sandbox Code Playgroud)
然而,在我删除之前,我打印出数组和索引.两者都没有,我没有理由相信为什么会发生这种错误.有任何想法吗?
我怎样才能将CGContextAddArc中的所有像素点到NSMutableArray.or CGContextRef到NSMutable Array
static inline float radians(double degrees)
{
return degrees * PI / 180;
}
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGRect parentViewBounds = self.bounds;
CGFloat x = CGRectGetWidth(parentViewBounds)/2;
CGFloat y = CGRectGetHeight(parentViewBounds)/2;
UIColor *rbg=[UIColor redColor];
CGContextSetFillColor(context, CGColorGetComponents( [rbg CGColor]));
CGContextMoveToPoint(context, x, y);
CGContextAddArc(context, x, y,100,radians(35),radians(105),0);
CGContextClosePath(context);
CGContextFillPath(context);
// here I want to store All points Containing in the Arc to NSMutableArray
NSMutableArray *pointsArray=????
}
Run Code Online (Sandbox Code Playgroud)
图片
PHP有:
arr[] = 'Push this onto my array';
Run Code Online (Sandbox Code Playgroud)
字符串将被添加到数组的末尾.
在新的Objective-C文字语法中是否有任何相当的东西?我能想到的最简洁的方法是:
arr[arr.count] = @"Add me";
Run Code Online (Sandbox Code Playgroud)
但也许那里有更好的东西?
我有生辰八字的阵列阵列接收来自Facebook充满所以有一些朋友卫生组织生日是私人所以它包含NULL如何数组像空字符串转换,只要有空值的数组类似于下面
"<null>",
"10/29/1988",
"11/13",
"03/24/1987",
"04/25/1990",
"03/13",
"01/01",
"<null>",
"12/15/1905",
"07/10",
"11/02/1990",
"12/30/1990",
"<null>",
"07/22/1990",
"01/01",
"07/17/1989",
"08/28/1990",
"01/10/1990",
"06/12/1990",
Run Code Online (Sandbox Code Playgroud) 我有快速的元组数组,[(String, String)]并希望将此数组转换为NSMutableArray.我试过这个并没有用:
let myNSMUtableArray = swiftArrayOfTuples as! AnyObject as! NSMutableArray
Run Code Online (Sandbox Code Playgroud) nsmutablearray ×10
objective-c ×7
iphone ×3
ios ×2
arrays ×1
casting ×1
cgcontextref ×1
cocoa ×1
cocoa-touch ×1
csv ×1
drawrect ×1
nsdata ×1
nsnull ×1
sorting ×1
swift ×1