[Swift]イニシャライザ(initメソッド)のサンプル

2021年7月21日

書式
init(引数1: String, 引数2: Int, 引数3: String)
使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
class Student {
var msg = "test message"
var stuno = 3000
var addr = "dummy address"
//引数なし コンストラクタ
init() {
self.msg = "data111"
self.stuno = 2008
self.addr = "A001"
}
//引数あり コンストラクタ
init(msg: String, stuno: Int, addr: String) {
self.msg = msg
self.stuno = stuno
self.addr = addr
}
}
// cftAインスタンスの生成 引数なし
let cftA = Student()
//値を出力
print(cftA.msg)
print(cftA.stuno)
print(cftA.addr)
結果
data11
2008
A001
// cftBインスタンスの生成 引数あり
let cftB = User(msg: "data22", stuno: 3005, addr: "B002")
//値を出力
print(cftB.msg)
print(cftB.stuno)
print(cftB.addr)
結果
data22
3005
B002
class Student { var msg = "test message" var stuno = 3000 var addr = "dummy address" //引数なし コンストラクタ init() { self.msg = "data111" self.stuno = 2008 self.addr = "A001" } //引数あり コンストラクタ init(msg: String, stuno: Int, addr: String) { self.msg = msg self.stuno = stuno self.addr = addr } } // cftAインスタンスの生成 引数なし let cftA = Student() //値を出力 print(cftA.msg) print(cftA.stuno) print(cftA.addr) 結果 data11 2008 A001 // cftBインスタンスの生成 引数あり let cftB = User(msg: "data22", stuno: 3005, addr: "B002") //値を出力 print(cftB.msg) print(cftB.stuno) print(cftB.addr) 結果 data22 3005 B002
class Student {
    var msg  = "test message"
    var stuno  = 3000
    var addr  = "dummy address"
    
      //引数なし コンストラクタ
    init() {
        self.msg = "data111"
        self.stuno = 2008
        self.addr = "A001"
    }
    //引数あり コンストラクタ
    init(msg: String, stuno: Int, addr: String) {
        self.msg = msg
        self.stuno = stuno
        self.addr = addr
    }
    
}
 
// cftAインスタンスの生成 引数なし
let cftA = Student()
//値を出力
print(cftA.msg) 
print(cftA.stuno) 
print(cftA.addr)
 
結果
data11
2008
A001
 
// cftBインスタンスの生成 引数あり
let cftB = User(msg: "data22", stuno: 3005, addr: "B002")
//値を出力
print(cftB.msg)
print(cftB.stuno) 
print(cftB.addr)

結果
data22
3005
B002

 

Swift

Posted by arkgame