初心者、基礎を積み上げる「get set(ゲッタ、セッタ)」
計算型(Computed)プロパティ
!値を保持せずに他のプロパティの値からその都度計算して結果を返したり、設定したりするプロパティ。
!公式
var 名前:型 { get{ プロパティの値を返すコード } set(仮引数) { プロパティの値を更新するコード } }
それぞれの部分をget(ゲッタ)節、set(セッタ)節という。
また、set節は省略可能。
ゲッタセッタを使ってbitをbyteに変換するプログラムを組んでみた!(8bit = 1byte)bit(ビット)わからない人はこちらhttp://blog.hatena.ne.jp/kichie_com/kichie-com.hatenablog.com/edit?entry=6653586347148643701#preview
struct Byte { var byte:Double = 0.0 let byterate = 0.125 //1割る8が0.125 init(bit:Double) { self.bit = bit } var bit: Double { get { return byte * byterate //変数bitに返す値 } set { byte = newValue / byterate //更新する値 } //よく理解できない場合は他のサイトのサンプルも見てじっくりにらめっこするといいと思います。 } } var byte1 = Byte(bit:1) print("\(byte1.byte)") // 8 と出力 print("\(byte1.bit)") // 1と出力
initがわからなかったら。
こちら
ここまでのまとめ3つ
- 計算型(Computed)プロパティはプロパティの値からその都度計算して結果を返したり、設定したりするプロパティ
- getは値を返し(ゲットし)、setは値を(セット)更新する。
- setは省略可能
参考サイト:http://tea-leaves.jp/swift/content/プロパティ
参考書籍: