괴발개발 성장기

Study/Go 언어

[golang] for문 공부하기

지니유 2022. 2. 12. 22:54
반응형

Go에서는 반복문으로 for문만 사용합니다. while문은 존재하지 않습니다.

# for문 기본 구조

for 초기문; 조건문; 후처리{
    코드 블록
}

예시

for i:=0; i<10; i++{
      fmt.Print(i) //0123456789
  }
  • 초기문, 후처리는 생략이 가능합니다. 둘 다 생략해도 됩니다.
for ; 조건문; 후처리{
    코드 블록
}

for 초기문; 조건문; {
    코드 블록
}

for ;조건문; {
    코드 블록
}
  • 조건문만 사용할 경우 ; 생략할 수 있습니다.
    for 조건문 {
      코드 블록
    }
  • 초기문, 조건문, 후처리 모두 생략할 수 있습니다
    for {  
    코드 블록  
    }

이 경우 무한 루프에 빠지게 됩니다. 그래서 break 이용하여 for문을 나와야합니다.


# 중첩 for문

for 초기문; 조건문; 후처리{  
    for 초기문; 조건문; 후처리{  
        코드 블록  
    }  
    코드 블록  
}

예시

	for i := 0; i < 5; i++ {
		for j := 0; j < i+1; j++ {
			fmt.Print("*")
		}
		fmt.Println()
	}

결과

*
**
***
****
*****

# continue와 break

  • continue : 이후 코드를 수행하지 않고 후처리로 바로 넘어갑니다.

예시

	for i := 0; i < 5; i++ {
		if i == 0 {
			fmt.Println("i=0입니다.")
			continue
		}
		fmt.Println(i)
	}

i=0인 경우 if문에 들어가서 “i=0입니다.”를 출력한 후 fmt.Println(i) 수행하지 않고 바로 후처리로 넘어갑니다. 그래서 i=1이 되면서 fmt.Println(i) 부분을 수행합니다.

결과

i=0입니다.  
1  
2  
3  
4
  • break : for문을 강제종료 시킨다.

예시

	for i := 0; i < 5; i++ {
		fmt.Println(i)
		if i == 0 {
			fmt.Println("i=0입니다.")
			break
		}
	}

break는 i가 0인 상태가 끝나면 for문을 나옵니다. 그래서 i=1인 경우는 실행하지 않습니다.

결과

0  
i=0입니다.

 

반응형

'Study > Go 언어' 카테고리의 다른 글

[golang] 배열 공부하기  (0) 2022.02.14
[golang] for range 공부하기  (0) 2022.02.13
[golang] switch문 공부하기  (0) 2022.02.11
[golang] if문 공부하기  (0) 2022.02.10
[golang] 글자 양쪽 공백 제거하는 방법(trim)  (0) 2022.01.30