🔥 Range에서 인덱스와 값 생략하기

202자
3분

Go 언어의 range 키워드를 사용하면 인덱스와 값을 모두 가져올 수 있지만, 필요하지 않은 경우에는 _ 를 사용하여 생략할 수 있습니다.

for i, _ := range pow
for _, value := range pow
 
go

위의 코드에서 첫 번째 줄은 인덱스만 사용하고 값은 생략하는 경우이고, 두 번째 줄은 값만 사용하고 인덱스는 생략하는 경우입니다.

만약 인덱스만 필요하다면 아래와 같이 두 번째 변수를 아예 생략할 수도 있습니다.

for i := range pow
 
go

이제 이를 활용한 전체 예제 코드를 살펴보겠습니다.

package main
 
import "fmt"
 
func main() {
	// pow라는 이름의 int 슬라이스를 길이 10으로 생성합니다.
	pow := make([]int, 10)
 
	// 인덱스만 사용하는 for 루프로 pow 슬라이스를 순회합니다.
	for i := range pow {
		// 각 인덱스의 값을 2의 i승으로 설정합니다.
		// 1 << uint(i)는 2**i와 같습니다.
		pow[i] = 1 << uint(i)
	}
 
	// 값만 사용하는 for 루프로 pow 슬라이스를 순회합니다.
	for _, value := range pow {
		// 각 값을 출력합니다.
		fmt.Printf("%d\n", value)
	}
}
 
go

이 코드를 실행하면 아래와 같은 출력 결과를 얻을 수 있습니다.

1
2
4
8
16
32
64
128
256
512
text

range를 사용할 때 인덱스나 값 중 필요하지 않은 부분은 _를 사용하여 생략할 수 있다는 점을 기억하세요. 이렇게 하면 코드의 가독성을 높일 수 있답니다.