id 객체의 클래스를 비교하려고합니다. 그러나, 내가 시도하고 NSNumber의 클래스에 개체의 클래스를 비교하면, NSNumber에 몇 가지 변수를 설정 했음에도 동등한 것으로 등록되지 않습니다. 왜 등록하지 않는지 제발 알려주시겠습니까? 제 코드는 여기에 있습니다.id 비교가 올바르게 작동하지 않습니다.
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
[dict setObject:n.title forKey:@"title"];
[dict setObject:[NSNumber numberWithBool:n.allDay] forKey:@"allDay"];
[dict setObject:[NSNumber numberWithInt:n.availability] forKey:@"availability"];
[dict setObject:[NSNumber numberWithInt:n.createdBy] forKey:@"createdBy"];
[dict setObject:n.endDate forKey:@"endDate"];
[dict setObject:n.location forKey:@"location"];
[dict setObject:n.notes forKey:@"notes"];
[dict setObject:n.ownerUsername forKey:@"ownerUsername"];
[dict setObject:n.startDate forKey:@"startDate"];
[dict setObject:[NSNumber numberWithInt:n.status] forKey:@"status"];
NSMutableString *json = [NSMutableString string];
[json appendString:@"{"];
for (NSString *key in [dict allKeys]) {
id obj = [dict objectForKey:key];
if ([[dict allKeys] indexOfObject:key] == 0) {
if ([obj class] == [NSNumber class])
[json appendFormat:@"\"%@\":%@", key, obj];
else
[json appendFormat:@"\"%@\":\"%@\"", key, obj];
}
else {
if ([obj class] == [NSNumber class])
[json appendFormat:@",\"%@\":%@", key, obj];
else
[json appendFormat:@",\"%@\":\"%@\"", key, obj];
}
}
[json appendString:@"}"];