據我所知,在Objective-C中,只能將對象放入字典中。所以如果我要創建一個字典,它將不得不擁有所有的對象。這意味着我需要將我的內幕添加爲NSNumber,對不對?在字典中存儲整數
洙......
NSNumber *testNum = [NSNumber numberWithInt:varMoney];
NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init];
[dictionary setObject:@"OMG, Object 1!!!!" forKey:@"1"];
[dictionary setObject:@"Number two!" forKey:@"2"];
[dictionary setObject:testNum forKey:@"3"];
NSNumber *retrieved = [dictionary objectForKey:@"3"];
int newVarMoney = [retrieved intValue];
哪裏varMoney是已早些時候宣佈一個int。我的問題是,有沒有更好的方式來存儲「int」在字典中,而不是把它放到一個NSNumber?
謝謝!
編輯:13年4月25日
這是一個很長的時間,因爲我問這個問題。對於未來人們的絆腳石,有一些更簡單的方法可以通過蘋果LLVM編譯器4.0來實現,它已經在Xcode中默認使用了一段時間。 (ARC)
NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];
[dictionary setObject:@1337 forKey:@"1"];
就是這樣,使用@ 1337語法快速創建NSNumber對象。用於變量,所以我上面將變成:
[dictionary setObject:@(varMoney) forKey:@"3"];
或
dictionary[@"mykey"] = @1337;
簡單。
你也可以做字典[@「1」] = @ 1337; – JuJoDi 2013-10-04 01:44:00