[Go] Go 언어 배열(array) & 슬라이스(slice) 정리

2021. 1. 16. 18:40Programming Language/Go

반응형

■ Go 언어 배열

배열은 선언 및 초기화를 할때 배열에 들어갈 데이터의 타입과 길이를 설정해야 한다.

따라서, 선언한 배열의 값을 변경하는 것은 가능하지만 배열에 값을 추가하는 것은 불가능하다.


배열(Array)

예시) 5명의 국어성적이 저장되어 있는 배열의 모든값을 출력하시오.
// 또는 koreanScore := [...]int{90, 87, 56, 78, 99} 같은의미
koreanScore := [5]int{90, 87, 56, 78, 99}

for _, score := range koreanScore {        
       fmt.Println(score)    
}

■ Go 언어 슬라이스

슬라이스는 배열과 달리 선언 및 초기화 시 슬라이스의 길이를 설정하지 않아도 된다.

또한, 내장함수 append를 활용하여 슬라이스에 값을 추가할 수 있다.


슬라이스(silce)

예시) 5명의 국어성적이 저장되어 있는 슬라이스에 1명의 전학생 국어성적을 추가하고 출력하시오.
koreanScore := []int{90, 87, 56, 78, 99} 

// 전체 국어성적 슬라이스에 전학생의 국어성적인 100을 추가
koreanScore = append(koreanScore, 100)    

for _, score := range koreanScore {       
    fmt.Println(score)    
}

내장 append 함수

append 함수에 첫번째 인자는 슬라이스, 두번째 인자는 슬라이스에 추가하고자하는 값을 넣는다.
append 함수는 첫번째 인자에 해당하는 슬라이스에 직접 값을 추가하지 않고새로운 슬라이스에 값을 추가하여 반환한다.

반응형