web-dev-qa-db-ja.com

Objective-CでNSDictionaryを作成する方法は?

このタイプのようなNSDictionaryを作成したい:

"zones": 
{
    {
        "zoneId": "1",
        "locations": 
        {
            {
                "locId": "1",
                "locZoneId": "1",
                "locLatitude": "33.68506785633641",
                "locLongitude": "72.97488212585449"
            },
            {
                "locId": “2”,
                "locZoneId": "1",
                "locLatitude": "33.68506785633641",
                "locLongitude": "72.97488212585449"
            },
            {
                "locId": “3”,
                "locZoneId": "1",
                "locLatitude": "33.68506785633641",
                "locLongitude": "72.97488212585449"
            },
        }
    }
}

しかし、私は作成する方法がわかりません。

16
vky

配列と辞書の組み合わせを使用する必要があります。

辞書は次のように初期化されます:

NSDictionary *dict = @{ key : value, key2 : value2};

Arraysは次のように初期化されます:

NSArray *array = @[Object1, Object2]
50
Marco

辞書を作成する新しいObjective-Cの正しい型指定された方法。

以下は、keyとして強く型付けされたNSStringvalueとしてNSNumberを持っています。

できる限り型を設定する習慣を身に付ける必要があります。強く型付けすることで、コンパイラーは一般的なエラーを防ぐことができ、Swiftでの動作が改善されます。

NSDictionary<NSString *, NSNumber *> *numberDictionary;

しかし、上記の場合、配列を辞書に保存する必要があるため、次のようになります。

NSDictionary<NSString *, id> *dataDictionary;

これにより、値を任意の型にすることができます。

0