취미생활
[GO] 반복문 사용하기 본문
기존 내가 사용하던 C++, Python 에서는 for, while, do-while 등등.. 여러가지 반복문을 제공했다.
이번에 내가 배우는 Go는 반복문으로 오직 for문 만을 가지고 있다.
그렇다.
반복문 파트는 for문 하나만 알고 들어가면 끝난다!
실습사이트
A Tour of Go
go.dev
일반 for문
package main
import "fmt"
func main() {
for i := 0; i < 100; i++ {
fmt.Println(i)
}
}
처음으로 사용해볼 for문은 아주 고전적인 for문이다.
시작 값, 종료 조건, 증가식을 입력하는 방식으로 거의 모든 프로그래밍에서 사용할 수 있다.
while 형식
package main
import "fmt"
func main() {
sum := 1
for sum < 1000 {
sum += sum
}
fmt.Println(sum)
}
그 다음은 while과 같이 사용할 수 있는 for문이다.
실습 홈페이지는 for에 세미 콜론이 붙은 것과 안붙은 것 모두 출력되지만
vscode에서 사용하면 세미콜론이 안붙는 것으로 자동최적화된다.
아마도 버전이 업데이트 되면서 하나로 통일된 듯
무한루프
for문 조건이 없어 무한으로 루프가 돌고있는 상황이다.
이런 경우에는 내부에 if문, break를 통해 for문을 끝내주어야 한다.
for each 형식
package main
import "fmt"
func main() {
str := []string{"hello", "world!"}
for i, s := range str {
fmt.Println(i, s)
}
}
배열에서 데이터를 뽑아 for문을 돌리는 형식인 for-each 형식의 루프도 지원한다.
솔직히 이거까지 지원하면 for문만 있다는 건 사실상 거짓말 아닐까?
참고로 for-each 사용 시
for 옆에 들어가는 변수는 index, value 값으로
현재가 몇 번째 아이템인지 보여주는 index와 실제 아이템 값이 들어갈 value로 구성된다.
index, value 중에 필요없는 데이터는 언더스코어(_)를 통해 무시할 수 있다.
이는 1,3번 예시에서 확인할 수 있다.
참고사이트
오늘 참고한 사이트는 아래와 같다.
5 basic for loop patterns
CODE EXAMPLE The for loop can be used for three-component loops, while loops, infinite loops and for-each range loops. You can exit a loop with break or continue.
yourbasic.org
A Tour of Go
go.dev
'컴퓨터 > go' 카테고리의 다른 글
[GO] 변수 선언하기 (0) | 2022.09.13 |
---|---|
[GO] hello world! golang 배우기 시작 (0) | 2022.09.06 |