go언어는 immutable을 지원하지 않는다.
string의 경우는 새로운 char[]을 생성해서 매번 새로운 문자열을 리턴하도록 한다.
따라서 var만 있지 val은 없다.
다음은 예제이다.
package main
import "fmt"
func main() {
var a = 1
fmt.Println(a)
a = 2
fmt.Println(a)
b := 10
fmt.Println(b)
b = 20
fmt.Println(b)
c := "aaaa"
fmt.Println(c)
c = "bbbb"
fmt.Println(c)
}
결과이다.
1
2
10
20
aaaa
bbbb
go 언어에서 문자열에 대해서 변수 할당을 하지 못하게 하려면 상수 타입인 const를 사용한다.
func main() {
const x = "1"
x = "2"
}
'go lang' 카테고리의 다른 글
[golang] 반복문 - for / 문 예제 (0) | 2017.08.29 |
---|---|
[golang] 타입 확인하는 방법 - reflect.TypeOf (0) | 2017.08.29 |
[golang] 함수 리턴 타입에 괄호 사용하는 예제 (0) | 2017.08.29 |
[go] 멀티라인 (다중 라인) (0) | 2017.08.29 |
[golang] Go 공부 시작 링크 (0) | 2017.08.29 |