HOME > NSMutableArray
Swiftでは頻繁に配列クラスといえばArrayクラスを利用します。
ですがObjective-C時のNSMutableArrayやNSArrayも
継続して利用することができます。なにが違うのでしょうか?それも含めて説明いたします。
参考:【Swift入門】ArrayとNSMutableArray/NSArrayの違い
読み専用=NSArray(immutable)か
読み書きどちらもOK=NSMutableArray(mutable)
の違いになります。
つまり配列の中身を後で変更できるのがNSMutableArrayとなります。
var swiftarr = NSMutableArray(array: ["swift-salaryman"])
swiftarr[1] = "swift-salarygirl"
println(swiftarr) // ["swift-salaryman", "swift-salarygirl"] と出力します
var swiftarr2 = NSArray(array: ["swift-salaryman"])
swiftarr2[1] = "swift-salarygirl"//エラー
println(swiftarr2);
読み専用=NSArray(immutable)=let Arrayか
読み書きどちらもOK=NSMutableArray(mutable)=var Array
の違いになります。
つまり宣言時のvarかletかで書き換え可能かを割り振ることができます
NS系は参照型ですので、参照元と参照先に変化があった際はそれぞれに影響がでます。
var swiftarr = NSMutableArray(array: ["swift-salaryman"])
var swiftarr2 = swiftarr;
swiftarr.addObject("swift-salarywoman")
println(swiftarr2) //["swift-salaryman", "swift-salarywoman"]
var swiftarr = Array(array: ["swift-salaryman"])
var swiftarr2 = swiftarr;
swiftarr.addObject("swift-salarywoman")
println(swiftarr2) //["swift-salaryman"]
2021-05-14 14:21:41 | WatchOSのwatchconnectivityのFiletransferの落とし穴。と、避け方。
AppleWatch 実機だと成功するんだけど、シュミレーターだと失敗するという、、、
昔作成してた時は成功してたのになーと思って調べると、どうやら昔は成功してたみたい。watchOS6以降は... |
2021-05-06 14:04:37 | LINEのアニメーションスタンプ制作の落とし穴、、、失敗談
ゴールデンウィークにLINEスタンプを作成してみました。
作り切って申請も通したんですが、意図したアニメーションと違う、、、、
LINEクリエーターの画面だと、アニメーションのプレビュー... |
2021-05-01 18:05:35 | 久しぶりのAdmobをobjective-cに実装。コンパイルエラーだらけ。バーミッション不具合でエミュレータにインスコできない。
忘れないようにメモ
エミュレータにアプリをインストールする際にパーミッション系のエラーがでた時、また、iphone実機にインストールする際にも権限系のエラーが出る場合。
ターゲット→ex... |
Tweet | |||
|