質問: object_X } ・ ・ ・ ``` 中身がnilの場合に別のObjectの内容を入れたいのですが、 同じ文を60個も書くのは、あまりにもバカみたいです。 ですが、効率よく書く方法が思いつきません。 なにか良い方法があれば、教えていただきたいです。 どうか、よろしくお願いします。 ### 補足情報(言語/FW/ツール等のバージョンなど) Xcode Version 7.3 Swift 2
回答: 個人的には2つの方法が考えられます。 1.アンド系の演算子を使用する。 記載されたコードでは ``` if object_0 == nil { object_0 = object_X } if objects_1 == nil { object_1 = object_X } ``` とあるので、 ``` if object_0 == nil && object_1 == nil && ... { object_0 = object_X } ``` という風に、if文の条件式にまとめてしまう方法です。 ただしこの場合、if文の条件式が異常に長くなってしまうので、可読性はかなり落ちるものと思われます。 2."nilかどうか"という値を配列として回す object_[n]またはそのオブジェクトの判定する部分(例: object_0.value )を配列にしてしまう方法です。 swift 2の場合、まだfor文は健在かと思いますので、イメージは以下のようになります。 ``` for int i=0; i < 60; i++ { if(object_[i].value == nil){ object_[i] = object_X } } ``` という風に記述すると、見栄えもある程度良くなるでしょう。