2017-09-24 2 views
0

次のコードの場合、メンバー "b"または "f"がmyArrayに存在するかどうかを確認するにはどうすればよいですか?Swift:メンバーが構造体内に存在するかどうかの確認

struct example { 

    var a: String! 
    var b: Bool! 
    var c: Bool! 
    var d: String! 

} 

var myArray = [example]! 

たとえば、メンバー "f"が存在するかどうかを確認すると、 "false"または "nil"を返すものがあります。 "b"が存在するかどうかを確認すると、 "true"を受け取ることになります。

ありがとう!

+0

[Swift - 配列にプロパティのある要素が含まれているかどうかを確認する](https://stackoverflow.com/questions/37988431/swift-check-if-array-contains-element-with-property) – OverD

+0

Swift大文字で始まる構造の名前を付けることをお勧めします。すべての構造体プロパティを暗黙のうちにアンラップされたオプションとして作成することは、本当に貧弱です。また、すべてのプロパティを定数として宣言する必要があります。プロパティの1つを変更する必要がある場合は、新しい構造体オブジェクトをインスタンス化してください –

+0

また、構造体に 'f'プロパティがあるかどうかを調べる意味は?私はあなたが探しているものは辞書であり、キーが存在するかどうかをチェックしていると思います。 –

答えて

1

Objective-Cとは異なり、Swiftにはこのようなことを行う動的なメカニズムがありません。したがって、@objc属性でマークされたNSObjectサブクラスのメンバーで作業している場合を除き、この方法でメンバーを名前で確認することはできません。

+0

私が作った質問に答えることに集中してくれてありがとう! ;) – Charles

関連する問題