基本❷
プログラミング基本からGoの理解を文字におこして行こうと思います!
Go言語-基本❶はこちら
変数定義と代入の違い
package main
func main(){
n := 100
n := 200
println(n)
}
//コンソール
:=の左側に新しい変数がないとエラーになる
変数定義の「:=」と、代入の「=」の違いに注意
2度変数nを定義しているためエラー
変数が使える場所
package main
func main(){
println(n) //使用不可
n := 100
println(n) //使用可能
}
//コンソール
変数nが定義されていないとエラー
変数は、定義したあとでしか使えない
コンソールには、「変数nが定義されていない」ことを表すエラー
使わない変数
package main
func main(){
a := 100
b := 200 //使用していない
println(a)
}
//コンソール
変数bが使用されていないとエラー
定義したものの使っていない変数があるとエラー
Goではエラーを発生させて、バグを未然に防ぐ設計になっている
型の不一致
package main
func main(){
n := 100
n := "Go" //int型でない
println(n)
}
//コンソール
string型の"Go"をint型として変数nに代入できないとエラー
変数のデータ型と異なるデータ型の値は代入できない
変数の演算
package main
func main(){
n := 100
println(n + 100)
}
//コンソール
200
変数は値と同じように扱える
自己代入
package main
func main(){
n := 100
n = n + 10 //100+10の合計を変数nに再代入
println(n)
}
//コンソール
110
nの値である100に数値の10を足して、それを再度nに代入(自己代入)
自己代入の省略
//原型 //省略型
n = n + 10 n += 10
n = n - 10 n -= 10
n = n * 10 n *= 10
n = n / 10 n /= 10
n = n % 10 n %= 10
}
「n = n + 10」は「n += 10」と省略でき、これは「-」「*」「/」「%」でも同様
自己代入の省略(2)
n = n + 1 → n += 1 → n++
n = n - 1 → n -= 1 → n--
}
「++」という記号は「変数に1を足す」という意味
反対に「--」は「変数から1を引く」という意味
変数に1足す、1引く時のみ、さらに省略できる