Swiftでオブジェクトが特定の型であるかどうかを確認する質問する

Swiftでオブジェクトが特定の型であるかどうかを確認する質問する

で構成された配列がありますAnyObject。これを反復処理して、配列インスタンスであるすべての要素を見つけたいと思います。

Swift でオブジェクトが特定の型であるかどうかを確認するにはどうすればよいですか?

ベストアンサー1

特定のタイプをチェックしたい場合は、次の操作を実行できます。

if let stringArray = obj as? [String] {
    // obj is a string array. Do something with stringArray
}
else {
    // obj is not a string array
}

obj「as!」を使用すると、型がない場合は実行時エラーが発生します。[String]

let stringArray = obj as! [String]

一度に 1 つの要素をチェックすることもできます。

let items : [Any] = ["Hello", "World"]
for obj in items {
   if let str = obj as? String {
      // obj is a String. Do something with str
   }
   else {
      // obj is not a String
   }
}

おすすめ記事