我有异步事件的大项目,有时我有错误 [__NSArrayM insertObject:atIndex:]:对象不能为零,但我不知道在哪里抛出此错误..我怎么能抓住这个错误?我在我操作insertobject的所有地方都设置了断言:atIndex而且没有..
这是堆栈:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil'
*** First throw call stack:
(0x34c352a3 0x32f4597f 0x34b7f8d9 0xc48db 0xc3ced 0xc3b41 0x1178d9 0x148aed 0x103cfd 0x102fc9 0x101f95 0x35f25595 0x35f7a13b 0x35f7a081 0x35f79f65 0x35f79e89 0x35f795c9 0x35f794b1 0x35f67b93 0x35f67833 0xd820b 0x35fc8275 0x3604aea9 0x326efa6f 0x34c0a5df 0x34c0a291 0x34c08f01 0x34b7bebd 0x34b7bd49 0x350b82eb 0x35f5a301 0x62e45 0x62de0)
libc++abi.dylib: terminate called throwing an exception
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种传递NSString的方法,它包含4个字符,整体代表一个4位数字,如0741,我一直在环顾四周,不断遇到这个函数
myArray = [dataString componentsSeparatedByString:@"\r\n"];
Run Code Online (Sandbox Code Playgroud)
componentsSeparatedByString ...如果我的组件没有分开,我该怎么办?
好吧,在查看下面发布的链接后,我找到了NSRange,并设法让它与下面的解决方案完美配合,但它感觉abit抽出并且可能比它需要的更笨重...让我知道你是什么想想,我能做些什么改进.
NSRange MyOneRange = {0, 1};
NSRange MyTwoRange = {1, 1};
NSRange MyThreeRange = {2, 1};
NSRange MyFourRange = {3, 1};
NSString *firstCharacter = [[NSString alloc] init];
NSString *secondCharacter = [[NSString alloc] init];
NSString *thridCharacter = [[NSString alloc] init];
NSString *fourthCharacter = [[NSString alloc] init];
firstCharacter = [myFormattedString substringWithRange:MyOneRange];
secondCharacter = [myFormattedString substringWithRange:MyTwoRange];
thridCharacter = [myFormattedString substringWithRange:MyThreeRange];
fourthCharacter = [myFormattedString substringWithRange:MyFourRange];
NSLog(@"%@, %@, %@, %@", firstCharacter, secondCharacter, thridCharacter, fourthCharacter);
Run Code Online (Sandbox Code Playgroud) 关于如何在Objective-C中处理数组,我有点困惑.如果我有一个像这样的数组
NSarray *myArray = [[NSArray alloc]
initWithObjects:@"N", @"N", @"N", @"N", @"N",
nil];
Run Code Online (Sandbox Code Playgroud)
如何将第一次出现更改为"Y"?
我以为我知道如何使用快速枚举,但有一些我不明白的事情.如果我创建三个NSString对象和三个NSNumber对象并将它们放在NSMutableArray:
NSString *str1 = @"str1";
NSString *str2 = @"str2";
NSString *str3 = @"str3";
NSNumber *nb1 = [NSNumber numberWithInt:1];
NSNumber *nb2 = [NSNumber numberWithInt:2];
NSNumber *nb3 = [NSNumber numberWithInt:3];
NSArray *array = [[NSArray alloc] initWithObjects:str1, str2, str3, nb1, nb2, nb3, nil];
Run Code Online (Sandbox Code Playgroud)
然后我对所有NSString对象进行快速枚举,如下所示:
for (NSString *str in array) {
NSLog(@"str : %@", str);
}
Run Code Online (Sandbox Code Playgroud)
在控制台中,我得到了这个结果:
2011-08-02 13:53:12.873 FastEnumeration[14172:b603] str : str1
2011-08-02 13:53:12.874 FastEnumeration[14172:b603] str : str2
2011-08-02 13:53:12.875 FastEnumeration[14172:b603] str : str3
2011-08-02 …Run Code Online (Sandbox Code Playgroud) 这是我的代码:
//-- check for d/b; create it if it doesn't exist
NSString *docsDir;
NSArray *dirPaths;
NSMutableArray *sqliteArray = [NSMutableArray array];
[sqliteArray addObject: @"CREATE TABLE IF NOT EXISTS SiteData (SITE_ID TEXT PRIMARY KEY NOT NULL, STA1 TEXT "
"TBM TEST, SITE_DESC TEXT, REMARKS TEXT, LOOP_COUNT INTEGER, DATE TEXT)" ];
[sqliteArray addObject: @"INSERT INTO SiteData (SITE_ID, LOOP_COUNT) VALUES('','')"];
[sqliteArray addObject: @"CREATE TABLE Readings (SITE_ID TEXT REFERENCES SiteData, LOOP_NBR TEXT, LOOP_CLOSED BINARY, "
"SEQ INTEGER, STA TEXT, BS TEXT, FS TEXT, DESC TEXT, …Run Code Online (Sandbox Code Playgroud) 我有一个NSArray,我想找到一个元素的最后一个出现.例如:
[apple, oranges, pears, apple, bananas];
int i = lastIndexOf("apple");
out: i == 3;
Run Code Online (Sandbox Code Playgroud)
我很难找到一个看APIS的简单解决方案,但是没有例子,所以很难理解我应该使用哪个函数.
我有CoreData对象的数组,每个对象是Person每个Person具有age它的类型是位整数的属性.
我的数组充满了Person对象.我想按age属性对数组进行排序.
我怎样才能做到这一点?
我整天都在努力使用这里的答案,但我找不到适合我的解决方案,所以我想我会寻求帮助:
我有一个从实体中提取的对象数组.
我想要做的就是将对象写入文件.
到目前为止我想出的是:
NSLog(@" Exported Records: %i", [exportArray count]);
// the count here is 4 records.
//Each record has about 8 elements.
//I'm just trying to get this working with the first two elements right now
NSString *writeString = nil;
NSError *error = nil;
int i = 0;
NSString *key = nil;
NSString *tempString = nil;
for (i=0; i<[exportArray count]; i++)
{
tempString = [tempString stringByAppendingString: @" \n "];
for (int j=0; j<3; j++)
{
if (j == 0) …Run Code Online (Sandbox Code Playgroud) 我制作了一个数组和一本字典.现在我想把字典的值放到数组中..我对目标C很新,所以请帮助."viewcontroller .m"
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
marray = [[NSMutableArray alloc]initWithObjects:@"1",@"2",@"3",@"4", nil];
marray = [[NSMutableArray alloc]initWithObjects:@"6",@"7",@"8",@"9",@"10", nil];
[self displayarray];
[marray release];
mDictionary = [[NSMutableDictionary alloc]init];
[mDictionary setValue:@"sdfsdhfg" forKey:@"firstname"];
[mDictionary setValue:@"kvxv" forKey:@"lastname"];
[self displaydict];
[mDictionary release];
}
-(void)displaydict{
CFShow(mDictionary);
}
-(void)displayarray{
for (int i = 0; i<[marray count]; i++) {
NSLog(@"the array data present at %d index is %@",i,[marray objectAtIndex:i]);
}
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
}
@end
Run Code Online (Sandbox Code Playgroud) 我从2个不同的共享Google日历中检索了数据,并将数据存储在一个数组中.我需要将数据排序为按日期排序的分段UITableView.
继承我的代码:
CalendarModel.h
#import "JSONModel.h"
#import "Time.h"
@interface CalendarModel : JSONModel
@property (strong, nonatomic) NSString* title;
@property (strong, nonatomic) NSArray<Time>* time;
@end
Run Code Online (Sandbox Code Playgroud)
CalendarModel.m
#import "CalendarModel.h"
@implementation CalendarModel
+(JSONKeyMapper*)keyMapper
{
return [[JSONKeyMapper alloc] initWithDictionary:@{
@"gd$when": @"time",
@"title.$t": @"title",
}];
}
@end
Run Code Online (Sandbox Code Playgroud)
time.h中
#import "JSONModel.h"
@protocol Time @end
@interface Time : JSONModel
@property (strong, nonatomic) NSString* startTime;
@property (strong, nonatomic) NSString* endTime;
@end
Run Code Online (Sandbox Code Playgroud)
Time.m什么都不做,因为它是由JSONModel处理的
SportsViewController.m
#import "SportsViewController.h"
#import "JSONModelLib.h"
#import "CalendarModel.h"
#import "Time.h"
#import "JSONValueTransformer.h"
@interface SportsViewController ()
@property (strong, nonatomic) NSMutableArray …Run Code Online (Sandbox Code Playgroud) nsarray ×10
objective-c ×9
ios ×4
iphone ×2
components ×1
find ×1
json ×1
nsdictionary ×1
nserror ×1
nsstring ×1
null ×1
sorting ×1
uitableview ×1
xcode ×1