init(dictionary: [AnyHashable : Any])
init(dictionaryLiteral : (Any, Any)...)
Availability 有効性
Technology
convenience init(dictionary otherDictionary: [AnyHashable
: Any],
copyItems flag: Bool
)
otherDictionary
A dictionary containing the keys and values with which to initialize the new dictionary. それで新しい辞書を初期化することになるキーと値を含んでいる辞書。
flag
If true
, each object in other
receives a copy
message to create a copy of the object—objects must conform to the NSCopying
protocol. In a managed memory environment, this is instead of the retain
message the object would otherwise receive. The object copy is then added to the returned dictionary.
true
ならば、other
の中の各オブジェクトはcopy
メッセージを受け取って、そのオブジェクトのコピーを作成します—オブジェクトはNSCopying
プロトコルに準拠しなければなりません。管理されたメモリ環境では、これは、そうでなければオブジェクトが受け取るであろうretain
メッセージの代わりです。オブジェクトのコピーはそれからその返される辞書に加えられます。
If false
, then in a managed memory environment each object in other
simply receives a retain
message when it is added to the returned dictionary.
false
ならば、それから管理されたメモリ環境ではother
の各オブジェクトは、それがその返される辞書に加えられるとき単にretain
メッセージを受け取ります。
An initialized object—which might be different than the original receiver—containing the keys and values found in other
.
初期化されたオブジェクト – それは元のレシーバとは異なるかもしれません – other
において見つかったキーと値を含んでいます。
After an immutable dictionary has been initialized in this way, it cannot be modified. 不変の辞書がこの方法で初期化され終わった後は、それは修正されることはできません。
The copy(with:)
method performs a shallow copy. If you have a collection of arbitrary depth, passing true
for the flag
parameter will perform an immutable copy of the first level below the surface. If you pass false
the mutability of the first level is unaffected. In either case, the mutability of all deeper levels is unaffected.
copy(with:)
メソッドは、浅いコピーを行います。あなたが随意の深さのあるコレクションを持つならば、true
をflag
パラメータに渡すことは表面下の第一階層の不変のコピーを行うことになります。あなたがfalse
を渡すならば第一階層の可変性は影響を受けません。両方の場合とも、すべてのより深い階層の可変性は影響を受けません。
init(dictionary: [AnyHashable : Any])
init(dictionaryLiteral : (Any, Any)...)