04 for, defer문
Go language course for beginners
for문
Go의 for문은 여러가지 방식으로 사용 될 수 있습니다.
무한루프
for {
// 무한루프
}
순회 가능한 객체
Go에서의 슬라이스, 맵, 배열, 채널, 스트링등은 순회 가능한 객체입니다.
순회 가능한 객체의 경우에는 for range 문을 사용하여 순회할 수 있습니다.
for key, value := range map {
// 순회
}
for key := range map {
// 순회
}
for _, value := range map {
// 순회
}
for index, value := range slice0 {
// 순회
}
for index := range slice0 {
// 순회
}
for _, value := range slice0 {
// 순회
}
for index, char := range "Hello" {
// 순회
}
초기식, 조건식, 증감식
다른 프로그래밍 언어처럼 Go도 초기식, 조건식, 증감식을 사용할 수 있습니다.
for i := 0; i < 10; i++ {
// 순회
}
while 문
Go에서는 while문이 따로 없고 for문이 while문을 대체합니다.
for 조건0 {
// 조건0이 참인 경우 반복
}
무한루프
무한 루프의 경우에는 다음과 같이 사용할 수 있습니다.
for {
// 무한루프
}
break, continue
다른 언어와 마찬가지로 break, continue를 사용할 수 있습니다.
break를 사용하면 루프 하나를 탈출합니다.
continue를 사용하면 루프의 다음 단계로 넘어갑니다.
defer문
Go에는 defer라는 편리한 키워드가 있습니다.
defer로 실행시킨 함수는 함수가 끝나기 직전에 실행됩니다.
func main() {
defer fmt.Println("defer")
}
또한 defer는 LIFO(Last In First Out)순서로 실행되며 마지막에 호출된 defer가 가장 먼저 실행됩니다.
What's next?
다음 포스트에서는 스트럭트와 슬라이스에 대해 살펴보겠습니다.