如何在 Objective-C 中将对象类型转换为另一个类
Posted
技术标签:
【中文标题】如何在 Objective-C 中将对象类型转换为另一个类【英文标题】:How to typecast Object to another Class in Objective-C 【发布时间】:2017-11-10 06:28:48 【问题描述】:我想进行类型转换或更改对象类型。
这里dict
是NSDictionary
NSLog(@"%@", dict);
我得到这个输出:它的类型:NSObject
data1 = (
lang = en;
value = "ABC";
,
lang = en;
value = "ABC";
);
但我希望括号内应该是这样的( )
它的类型:NSDictionary
(
data1 = (
lang = en;
value = "ABC";
,
lang = es;
value = "XYZ";
);
)
请帮帮我,我是新手。
【问题讨论】:
这里,()表示数组。所以只需将你的字典添加到数组中。 这不是类型转换。仅供参考。 【参考方案1】:尝试使用此代码将您的字典添加到数组中
NSDictionary *data1 = @@"data1":@[@@"lang":@"en",@"value":@"ABC",@@"lang":@"en",@"value":@"ABC"];
NSArray *arr = [NSArray arrayWithObject:data1];
NSLog(@"%@",arr);
【讨论】:
【参考方案2】:试试这个:
NSArray *arr = [NSArray arrayWithObject: dict];
NSLog(@"%@",arr);
希望能解决您的问题。 :)
【讨论】:
【参考方案3】:创建一个数组。将字典放入数组并打印出来。你会得到你想要的输出。
NSMutableArray *array = [[NSMutableArray alloc] initWithObjects:dict, nil];
NSLog(@"%@",array);
【讨论】:
【参考方案4】:你也可以这样做
NSArray *array = @[@@"name":@"abc",@"class":@"efg",];
NSLog(@"array - %@",array);
【讨论】:
【参考方案5】:NSArray *arrayOfDictionary = [NSArray arrayWithObject:dict];
NSLog(@"%@",arrayOfDictionary);
这会起作用。
【讨论】:
@SucharuHasija 我没听懂你以上是关于如何在 Objective-C 中将对象类型转换为另一个类的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Objective-C 中将字符串转换为整数? [复制]
如何在 Cython 中将 Python 对象转换为 C++ 类型