정상우
hELLO.
정상우
전체 방문자
384,511
오늘
130
어제
1,174
  • hELLO. (121)
    • 컴퓨터과학 (4)
      • 알고리즘 & 자료구조 (4)
    • 언어 & 프레임워크 (63)
      • Go (23)
      • PHP & Laravel (40)
    • 웹 (7)
    • 블록체인 (12)
      • 메인넷 (9)
      • 암호화폐 플랫폼 (3)
    • 포트폴리오 (10)
    • 칼럼 (20)
      • 에세이 (4)
      • 개발자스럽게 살기 (14)
      • 회고 (2)
    • 티스토리 (5)

블로그 메뉴

  • ⚡ 개발자 이력서
  • 🌟 깃허브
  • 💻 강의
  • ✨ 예제코드
  • ⭐ 브런치
  • 태그 클라우드
  • 방명록

공지사항

  • 2차 도메인을 설정했습니다 ✨

인기 글

  • JWT(JSON Web Token)의 개념부⋯
    2021.07.29
    JWT(JSON Web Token)의 개념부⋯
  • 'REST' 를 보다 'RESTful' 하게⋯
    2021.08.14
    'REST' 를 보다 'RESTful' 하게⋯
  • [Laravel] 라라벨 프레임워크⋯
    2021.06.10
    [Laravel] 라라벨 프레임워크⋯
  • 깃허브를 포트폴리오로 쓰려면⋯
    2021.12.25
    깃허브를 포트폴리오로 쓰려면⋯
  • 암호화폐 트레이딩 봇을 만들었⋯
    2021.05.12
    암호화폐 트레이딩 봇을 만들었⋯

태그

  • php
  • go
  • 블록체인
  • 포트폴리오
  • 개발
  • 라라벨
  • 프로그래머스
  • Algorithm
  • 코딩테스트
  • 개발 리뷰

최근 댓글

  • 고맙습니다 ~^^
    정상우
  • 오늘 블로그 만들었는데 검색하⋯
    엥뿌삐
  • 좋은 스킨 정말 감사드립니다.⋯
    이태홍
  • 고맙습니다 ㅎㅎ
    정상우
  • 제가 원하던 최고의 스킨입니다⋯
    _HEON

최근 글

  • 빠르게 성장하는 개발자의 세⋯
    2022.06.08
    빠르게 성장하는 개발자의 세⋯
  • 개발자와 엔지니어, 그 사이에서
    2022.05.10
    개발자와 엔지니어, 그 사이에서
  • 아임포트(Iamport)로 결제기능⋯
    2022.04.03
    아임포트(Iamport)로 결제기능⋯
  • 아임포트(Iamport)로 결제기능⋯
    2022.04.01
    아임포트(Iamport)로 결제기능⋯
  • [Laravel] 카페24 호스팅에 라⋯
    2022.03.29
    [Laravel] 카페24 호스팅에 라⋯

티스토리

hELLO · Designed By 정상우.
정상우

hELLO.

언어 & 프레임워크/Go

Go: 반복문 (for, range)

2020. 11. 25. 22:20

for

반복문을 사용할 때는 for 키워드를 사용한다. Go 언어에는 while 문이 없기 때문에 for 문에서 모든 반복을 해결한다. 아래에서 몇 가지 케이스를 살펴보자. 반복문은 초기화식, 조건식, 증감식이 사용된 형태로 사용된다. 대부분에서 언어에서 공통으로 사용되는 형태이다. 반복자가 10 미만인 경우에 한해 반복하며 블록 내부에 있는 코드를 실행하고, 이후 반복자의 값을 하나씩 더한다.

package main

import "fmt"

func main() {
	sum := 0
	for i := 0; i < 10; i++ {
		sum += i
	}
	// -> 45
	fmt.Println(sum)
}

while 처럼 사용하기

for 문을 타언어의 while 처럼 사용할 수 있다.

package main

import "fmt"

func main() {
	sum := 1
	for sum < 100 {
		sum += sum
	}
	// -> 128
	fmt.Println(sum)
}

무한 루프

무한 루프의 경우 아무것도 안 주면 된다. 타언어에 비해 상당히 심플하다.

package main

func main() {
	for {
	}
}

for ~ range

배열이나 슬라이스, 맵을 순회할 때 range 키워드를 사용하여 순회할 수 있다. 반복문을 가장 많이 사용하게 되는 케이스가 아닐까 생각해본다. 키, 인덱스가 들어가고 두 번째에는 값이 들어간다. 여기서 값이 숫자로 나오는 이유는 아스키 코드 테이블에 의해 매핑된 값이 출력되기 때문이다. Go 에서는 rune 에 대해 출력을 하게 되면 자동으로 코드 값으로 바꿔준다.

package main

import "fmt"

func main() {
	runes := []rune{'A', 'B', 'C'}
	for _, r := range runes {
		// -> 65, 66, 67
		fmt.Println(r)
	}
}

반복문 제어하기

반복문을 제어하는 방법으로는 break, continue 키워드가 존재한다. break 를 사용하면 반복문에서 즉시 탈출하며, continue 를 하면 그 이후 표현식은 모두 무시하고 다시 조건식으로 되돌아간다. 아래의 코드에서 출력은 10 까지만 허용되며 11 은 2로 나누어 지지않고 조건문에 포함되지 않으므로 break 가 사용되어 밖으로 반복문을 벗어난다.

package main

import "fmt"

func main() {
	numbers := []int{2, 4, 6, 8, 10, 11, 14}

	// -> 2, 4, 6, 7, 10
	for _, num := range numbers {
		if num%2 == 0 {
			fmt.Println(num)
			continue
		}
		break
	}
}
    '언어 & 프레임워크/Go' 카테고리의 다른 글
    • Go: 맵 (Map)
    • Go: 배열 & 슬라이스 (Array, Slice)
    • Go: 조건문 (if, switch)
    • Go: 패키지 (package, import)
    For, go, 반복문
    정상우
    정상우
    과거의 배움으로 현재를 바꾸고 미래를 만듭니다. #25+2살 #INFJ #개발자 #브런치작가
    댓글쓰기
    다음 글
    Go: 배열 & 슬라이스 (Array, Slice)
    이전 글
    Go: 조건문 (if, switch)
    • 이전
    • 1
    • ···
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • ···
    • 121
    • 다음

    티스토리툴바