[Golang] 컬렉션 - 변수

이정훈·2023년 5월 25일
0

Golang

목록 보기
21/24
post-thumbnail

배열 (Array)

  • 두 개 이상의 변수를 모아 놓은 것을 '컬렉션'

  • 배열을 포함한 컬렉션은 다수의 데이터를 저장하고 처리하는 경우에 유용하다!

  • Go언어에서의 배열은 정적!

  • 고정된 배열 크기 안에 동일한 데이터를 연속적으로 저장할 수 있다는 것!

  • 그래서 크기를 동적으로 증가시키거나 부분 배열을 발췌하는 등의 기능을 가지고 있지 않다.

  • 배열의 선언은 var 배열이름 [배열크기]자료형 형식

  • 배열 크기를 데이터 타입 앞에 쓰는 것은 C언어와 Java 같은 다른 언어들과 다르다!

  • Go언에에서는 배열의 크기는 자료형을 구성하는 하나의 요소일 뿐!

  • 따라서, [3]int와 [5]int는 string과 float32처럼 타입 자체가 다른 것입니다.

  • 배열이 선언되면 배열의 요소를 인데스를 사용하여 읽거나 쓸수가 있다.!

코드

package main

import "fmt"

func main() {
	var arr1 [5]int   //길이가 5인 int형 배열 arr1을 선언
	fmt.Println(arr1) //숫자를 선언하지 않고 출력해보기

	arr1 = [5]int{1, 2, 3, 4, 5}        //배열 초기화
	fmt.Println(arr1, arr1[0], arr1[4]) //배열 전체와 인덱스에 저장된 값들 출력해보기

	arr2 := [4]int{4, 5, 6, 7} //:= 를 이용해 선언
	arr2[0] = 32               //인덱스를 이용해 값을 초기화
	fmt.Println(arr2)          //arr2 전체 출력해보기

	var arr3 = [...]int{9, 8, 7, 6} //[...]을 이용한 배열 크기 자동 설정
	fmt.Println(arr3, len(arr3))    //arr3 전체와  배열 크기 출력해보기
}

출력

[0 0 0 0 0]
[1 2 3 4 5] 1 5
[32 5 6 7]
[9 8 7 6] 4
  • 배열은 다양한 방법으로 선언하고 선언된 것중에 인덱스 번호를 따서 초기화할 수 가 있다.
  • 배열의 길이를 알 수 있는 len() 배열의 크기를 자동으로 설정 [...] 이 후에 크기를 바꿀 수 있는 것은 아니라는 것을 주의!

다차원 배열

  • 배열 선언하는 것에 있어 특별한 차이점은 없기 떄문에 간단한 형태만 행 x 열

    코드

package main
>
import "fmt"
>
func main() {
    var a = [3][3]int{
		{1, 2, 3},        
		{4, 5, 6},
		{7, 8, 9}, //3x3배열 초기화
    }
>	
    fmt.Println(a[1][2]) //2행 3열의 값 출력
    					// 인덱스는 0, 1, 2 순으로!
}

출력

 6

한 눈에 끝내는 고랭 기초 !!

profile
싱숭생숭늉

0개의 댓글