NSArray 键 => 值,
NSArray key => value,
我的键值当前系统不工作。这里是设置数组的地方。
NSArray *matchInfo = [[NSArray alloc] initWithObjects:
@{@"matchName" : _matchName},
@{@"hostName" : _hostName},
nil];
那么是不是转换成NSData
NSData *dataToSend = [NSKeyedArchiver archivedDataWithRootObject:message];
收到并设置
NSArray *receivedArray = [NSKeyedUnarchiver unarchiveObjectWithData:receivedData];
_matchName = [receivedArray valueForKey:@"matchName"];
_hostName = [NSString stringWithFormat:@"%@",[receivedArray valueForKey:@"hostName"]];
NSLog(@"%@, %@", _matchName, _hostName);
它们不同的原因是因为我在玩弄不同的方式。然而,nslog 提供了这个。
(
主机匹配,
“”
), (
"",
主机名
)
我无法理解,只是让我觉得数组最初设置错误。
@{@"matchName" : _matchName}
这是 shorthand [NSDictionary dictionaryWithObjectsAndKeys:_matchname, @"matchName"]
。这意味着您有一个 NSArray
和两个 NSDictionaries
.
您可能想要的是一个带有两个键的 NSDictionary。像这样:
NSDictionary *dictionary = @{@"matchName" : _matchName, @"hostName" : _hostName}
这对应于PHP和其他语言的array( "key" => "value", "key" => "value)类型的数组。
你应该拥有的是:
NSDictionary *matchInfo = @{@"matchName" : _matchName,
@"hostName" : _hostName};
NSArray *array = @[@{@"key1" : @"value1"}, //-index 0-//
@{@"key2" : @"value2"}, //-index 1-//
@{@"key3" : @"value3"}, //-index 2-//
@{@"key4" : @"value4"}]; //-index 3-//
int i = 0; //-index 0 - 3-//
NSDictionary *dict = [array objectAtIndex:i];
NSArray *key = [dict allKeys];
NSArray *value = [dict allValues];
NSLog(@"%@", key[0]);
NSLog(@"%@", value[0]);
result :
2015-08-04 11:46:20.781 key1
2015-08-04 11:46:20.781 value1
我的键值当前系统不工作。这里是设置数组的地方。
NSArray *matchInfo = [[NSArray alloc] initWithObjects:
@{@"matchName" : _matchName},
@{@"hostName" : _hostName},
nil];
那么是不是转换成NSData
NSData *dataToSend = [NSKeyedArchiver archivedDataWithRootObject:message];
收到并设置
NSArray *receivedArray = [NSKeyedUnarchiver unarchiveObjectWithData:receivedData];
_matchName = [receivedArray valueForKey:@"matchName"];
_hostName = [NSString stringWithFormat:@"%@",[receivedArray valueForKey:@"hostName"]];
NSLog(@"%@, %@", _matchName, _hostName);
它们不同的原因是因为我在玩弄不同的方式。然而,nslog 提供了这个。
( 主机匹配, “” ), ( "", 主机名 )
我无法理解,只是让我觉得数组最初设置错误。
@{@"matchName" : _matchName}
这是 shorthand [NSDictionary dictionaryWithObjectsAndKeys:_matchname, @"matchName"]
。这意味着您有一个 NSArray
和两个 NSDictionaries
.
您可能想要的是一个带有两个键的 NSDictionary。像这样:
NSDictionary *dictionary = @{@"matchName" : _matchName, @"hostName" : _hostName}
这对应于PHP和其他语言的array( "key" => "value", "key" => "value)类型的数组。
你应该拥有的是:
NSDictionary *matchInfo = @{@"matchName" : _matchName,
@"hostName" : _hostName};
NSArray *array = @[@{@"key1" : @"value1"}, //-index 0-//
@{@"key2" : @"value2"}, //-index 1-//
@{@"key3" : @"value3"}, //-index 2-//
@{@"key4" : @"value4"}]; //-index 3-//
int i = 0; //-index 0 - 3-//
NSDictionary *dict = [array objectAtIndex:i];
NSArray *key = [dict allKeys];
NSArray *value = [dict allValues];
NSLog(@"%@", key[0]);
NSLog(@"%@", value[0]);
result :
2015-08-04 11:46:20.781 key1
2015-08-04 11:46:20.781 value1