여름의 서재
[Go 기초] 배열 (Array) 본문
728x90
배열
배열의 선언은 "var 변수명 [배열크기] 데이타타입" 과 같이 하는데, 배열크기를 데이타타입 앞에 써 주는 것이 C, Java 같은 다른 언어들과 다르다. Go에서 배열의 배열크기는 Type을 구성하는 한 요소이다. 즉, [3]int와 [5]int는 서로 다른 타입으로 인식된다. 배열이 선언된 후에 각 배열의 요소를 인덱스를 사용하여 읽거나 쓸 수 있다.
package main
func main() {
var a [3]int //정수형 3개 요소를 갖는 배열 a 선언
a[0] = 1
a[1] = 2
a[2] = 3
println(a[1]) // 2 출력
}
배열을 정의할 때, 초기값을 설정할 수도 있다. 초기값은 "[배열크기] 데이타타입" 뒤에 { } 괄호를 두고 초기값을 순서대로 적으면 된다. 즉, 위 예제의 배열 초기화를 다음과 같이 할 수 있다. 만약 초기화 과정에서 [...] 를 사용하여 배열크기를 생략하면 자동으로 초기화 요소 숫자만큼 배열크기가 정해진다.
var a1 = [3]int{1, 2, 3}
var a2 = [...]int{1, 2, 3} //배열크기 자동으로
Go 언어는 다차원 배열을 지원한다. 다차원 배열은 배열크기 부분을 복수 개로 설정하여 선언한다.
var multiArray [3][4][5]int // 정의
multiArray[0][1][2] = 10 // 사용
다차원 배열의 초기화는 단차원 배열의 초기화와 비슷하다. 다만, 다차원이므로 배열 초기값 안에 다시 배열값을 넣는 형태를 띤다. 즉, 아래 예제에서 보듯이, 2개의 행과 3개의 열을 이루는 배열이 초기화되었는데, 1행이 {1,2,3} 처럼 묶여서 표현되고 있다.
func main() {
var a = [2][3]int{
{1, 2, 3},
{4, 5, 6}, //끝에 콤마 추가
}
println(a[1][2])
}
출처: http://golang.site/go/article/12-Go-%EC%BB%AC%EB%A0%89%EC%85%98---%EB%B0%B0%EC%97%B4
'Skill > Golang' 카테고리의 다른 글
[Go 기초] 맵 (Map) (1) | 2022.04.13 |
---|---|
[Go 기초] 슬라이스 (Slice) (0) | 2022.04.13 |
[Go 기초] 클로저 (0) | 2022.04.13 |
[Go 기초] 함수 (0) | 2022.04.13 |
[Go 기초] 조건문 & 반복문 (0) | 2022.04.13 |
Comments