Go 언어로 작성하는 방법은 무엇입니까?

青灯夜游
풀어 주다: 2023-01-18 14:50:35
원래의
1586명이 탐색했습니다.

Go 언어에서 For 루프를 작성하는 방법에는 세 가지가 있습니다. 1. "for init; Condition; post {...}" 구문을 사용하여 C 언어 for와 동일한 작성 방법 2. 동일한 방법 C 언어로 작성하는 동안 "for 조건 {...}" 구문으로 작성합니다. 3. C 언어 for(;;) 작성 방법과 동일하며 구문은 "for {...}"입니다. 왼쪽 중괄호 "{"는 for 키워드와 같은 줄에 있어야 합니다.

Go 언어로 작성하는 방법은 무엇입니까?

이 튜토리얼의 운영 환경: 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿