質問: Swift初心者なのですが、self について質問があります。
回答: クラス、構造体の定義の中で、メソッド内に使われるプロパティ名は、selfを省略できる。 そういうSwiftの文法に従って、1はselfを省略しています。それ以外の違いはありません。 ならば、最初からselfなんて付けなければいいじゃないか?という話になりますが、それはselfを省略できないケースが出てくるので、「self + プロパティ名」が基本となります。 Selfを省略できないケースのひとつに、ローカル変数名のバッティングというものがあります。 struct SomeStruct { var value = 12 mutating func add(value: Int) { self.value += value } } 上のaddは、プロパティvalueに引数の値を足すだけのメソッドですが、プロパティ名と引数名がバッティングしてしまうので、self.valueと記述する必要が出てきます。