Go 언어에서 For 루프를 작성하는 방법에는 세 가지가 있습니다. 1. "for init; Condition; post {...}" 구문을 사용하여 C 언어 for와 동일한 작성 방법 2. 동일한 방법 C 언어로 작성하는 동안 "for 조건 {...}" 구문으로 작성합니다. 3. C 언어 for(;;) 작성 방법과 동일하며 구문은 "for {...}"입니다. 왼쪽 중괄호 "{"는 for 키워드와 같은 줄에 있어야 합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, GO 버전 1.18, Dell G3 컴퓨터.
대부분의 언어와 달리 Go 언어의 루프 문은 for 키워드만 지원하고 while 및 do-while 구조는 지원하지 않습니다.
for 루프는 지정된 수의 루프를 실행할 수 있는 루프 제어 구조입니다.
Go 언어의 for 루프 작성 방법
Go 언어의 For 루프에는 3가지 형태가 있는데 그 중 세미콜론을 사용하는 것은 단 하나만입니다.
는 C 언어의 for와 동일:
for init; condition; post { }
는 C의 while과 동일:
for condition { }
는 C의 for(;;)와 동일:
for { }
init: 일반적으로 할당 표현식, 할당 제어 변수에 대한 초기 값 ;
조건: 관계식 또는 논리식, 루프 제어 조건
post: 일반적으로 제어 변수를 증가 또는 감소시키는 할당 표현식입니다.
for 문 실행 과정은 다음과 같습니다.
1. 먼저 표현식 1에 초기 값을 할당합니다.
2 할당 표현식이 주어진 조건을 만족하는지 확인합니다. 루프가 조건을 만족하면 루프 내에서 명령문을 실행한 다음 post를 실행하고 두 번째 루프에 들어간 다음 조건을 판단합니다. 그렇지 않으면 조건의 값이 거짓으로 판단되고 조건이 충족되지 않으면 for가 실행됩니다. 루프가 종료되고 루프 외부의 명령문이 실행됩니다.
루프문을 사용할 때 다음 사항에 주의해야 합니다.
왼쪽 중괄호{
는 for와 같은 줄에 와야 합니다.
Go 언어의 for 루프는 C 언어와 동일하므로 루프 조건에서 변수를 정의하고 초기화할 수 있습니다. 유일한 차이점은 Go 언어는 쉼표로 구분된 다중 할당 문을 지원하지 않으며 병렬 할당이 필요하다는 것입니다. 여러 변수를 초기화하는 방법을 사용합니다.
Go 언어의 for 루프는 루프를 제어하기 위해 계속 및 중단도 지원하지만 다음 예와 같이 중단할 루프를 선택할 수 있는 고급 중단을 제공합니다.
for j := 0; j < 5; j++ { for i := 0; i < 10; i++ { if i > 5 { break JLoop } fmt.Println(i) } } JLoop: // ...
위에서 코드에서 break 문이 종료되는 것은 JLoop 레이블의 외부 루프입니다.
Go 언어 for 루프 사용
for 루프의 범위 형식은 슬라이스, 맵, 배열, 문자열 등을 반복할 수 있습니다. 형식은 다음과 같습니다.
for key, value := range oldMap { newMap[key] = value }
위 코드에서 키와 값은 생략 가능합니다.
키만 읽으려는 경우 형식은 다음과 같습니다.
for key := range oldMap
또는
for key, _ := range oldMap
값만 읽으려는 경우 형식은 다음과 같습니다.
for _, value := range oldMap
Example
Calculate 1에서 10까지의 숫자의 합:
package main import "fmt" func main() { sum := 0 for i := 0; i <= 10; i++ { sum += i } fmt.Println(sum) }
출력 결과는 다음과 같습니다.
55
init 및 post 매개변수는 선택사항이며 While 문과 유사하게 직접 생략할 수 있습니다.
다음 예에서는 합이 10보다 작을 때 더한 후 합의 값을 계산합니다.
package main import "fmt" func main() { sum := 1 for ; sum <= 10; { sum += sum } fmt.Println(sum) // 这样写也可以,更像 While 语句形式 for sum <= 10{ sum += sum } fmt.Println(sum) }
출력 결과는 다음과 같습니다.
16 16
[관련 권장 사항: Go 비디오 튜토리얼, 프로그래밍 교육]
위 내용은 Go 언어로 작성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!