このページは「Nilかもしれないプロパティ」のサンプルコードです。

本文の続きを読む

import UIKit

class Tour{

    let name:String

    var bass:Musician?
    var drums:Musician?

    init(name:String){
        self.name = name
    }

    func reportMember()->String{
        var message = ""

        if(bass == nil){
            message = "ベースは決まっていません。"

        }else{
            message = "ベースは\((bass!).name)さん。"
        }
        if(drums == nil){
            message += "ドラムは決まっていません。"

        }else{
            message += "ドラムは\((drums!).name)さん。"
        }

        return message + "\n"

    }

}

class Musician{
    let name:String
    var part:String

    init(name:String, part:String){
        self.name = name
        self.part = part
    }
}


class ViewController: UIViewController {


    @IBOutlet weak var resultText: UITextView!

    override func viewDidLoad() {
        super.viewDidLoad()

        var myStr = ""

        let us2014 = Tour(name:"2014アメリカ横断スーパーツアー")
        us2014.bass = Musician(name:"トニー", part:"ベース")
        us2014.drums = Musician(name:"ビル", part:"ドラム")
        myStr = us2014.reportMember()

        resultText.text = myStr

    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

サンプルのiOSシミュレータによる実行結果

本文の続きを読む