Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

Array, Slice, Map

Go 언어는 Number, String, Boolean의 기본 타입외에, 배열(array), 슬라이스(slice), 맵(map)와 같은 추상화된 데이터 타입을 지원한다.

배열

배열은 동일한 형식의 데이터들의 연속으로 구성된, 데이터 형식이다. Go 배열은 다음과 같이 선언한다.
var x [5]int
5개의 int형 데이터를 저장할 수 있는 배열 x를 선언했다. 아래는 배열 사용 예제다.
func main() {
    var x [5]int
    x[4] = 100
    fmt.Println(x)
}

실행 결과
[0 0 0 0 100]

x[4] = 100은 x 배열의 5번째 요소로 100을 저장하라는 의미다. 배열의 index는 0부터 시작하니 x[4]가 5번째 요소가 되는 거다. 배열요소의 접근도 [ ]안에 접근할 index 번호를 넣어주면 되겠다. 다른 언어들과 차이가 없다. 배열의 5번째 값을 가져오길 원한다면 fmt.Println(x[4])로 하면 되겠다.

좀 더 복잡한 예제
func main() {
    var x [5]float64
    x[0] = 98
    x[1] = 93
    x[2] = 77
    x[3] = 82
    x[4] = 83
    
    var total float64 = 0
    for i := 0; i < 5; i++ {
        total += x[i]
    }
    fmt.Println(total / 5)
}
평균값을 구하는 프로그램이다. 86.6이 나왔다면, 제대로 작동한 거다. 분석을 해보자면