일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- bitcoin
- Golang
- go
- go언어
- 영화
- 리뷰
- mutex
- Close
- JavaScript
- range
- windows
- FOR
- Sync
- C
- GO 언어
- Python
- Linux
- 책
- channel
- Callback
- http
- write
- json
- tcp
- package
- File
- window
- c++
- API
- install
- Today
- Total
목록range (5)
Code Habit
fmt.Println()과 같이 함수 인수 개수가 고정적이지 않은 함수를 가변 인수 함수라고 한다. 가변 인수 함수는 '...' 키워드를 이용하여 만들 수 있다. func sum(args ...int) int { var sum = 0 for _, v := range args { sum += v } println("합계 : ", sum) return sum } func main() { sum(1, 2, 3, 4, 5, 6) } int형 가변 인수를 받는 함수 sum()을 정의하고 int형 변수들을 인수로 넘겨준다. 빈 인터페이스 interface{}를 이용하면 여러타입의 인수를 받을 수 있다. ( 모든 타입은 빈 인터페이스 interface{}를 포함한다.) func func1(args ...interfa..
for 반복문에서 range 키워드를 이용하여 배열/슬라이스 요소를 순회할 수 있다. func main() { var t []int = [5]int{1, 2, 3, 4, 5} for i, v = range t {// i : index( 0 ~ 4 ), v : value( 1 ~ 5 ) fmt.Println(i, v) } } for range 구문을 사용하여 채널에서 데이터를 계속 기다릴 수 있다. func main() { var wg sync.WaitGroup wg.Add(1) ch := make(chan int) go func() { defer wg.Done() for n := range ch { // ch에 값이 들어올때까지 대기, 채널을 닫으면 (close(ch)) for 구문을 빠져나온다. fmt..
1. range - 범위 자료형으로 for문의 반복 범위를 정할 때 사용할 수 있다. for i in range(5) : print(i) #결과 0 1 2 3 4 2. 리스트와 range함수 조합하기 - for문에서 리스트의 인덱스, 값 두개에 접근하기 위해 조합할 수 있다. array = ["가", "나", "다", "라"] for i in range(len(array)) : print("{}번째 요소 : {}".fromat(i, array[i])) 3. enumerate - iterable object로 for문에서 리스트등의 범위 자료형에 접근할 때 사용할 수 있다. array = ["가", "나", "다", "라"] for i, value in enumerate(array) : print("{}번..
채널에 값이 몇 개나 들어올지 모르기 때문에 값이 들어올 때마다 계속 꺼내기 위해 range를 사용할 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 package main import ( "fmt" "runtime" ) func main() { runtime.GOMAXPROCS(1) c:= make(chan int) // int 형 채널 생성 go func() { for i := 0; i
Go 언어에서 배열은 다음과 같이 사용한다. var 배열명 [길이]자료형 var a [5]int a[2] = 7 fmt.Println(a) // [0 0 7 0 0] 배열을 생성하면서 값을 초기화 하려면 다음과 같이 쓰면 된다. var a [5]int = [5]int{32, 29, 78, 16, 81} // int 형이며 길이가 5인 배열을 선언하고 초기화 var b = [5]int{32, 29, 78, 16, 81} // 배열을 선언할 때 자료형과 길이 생략 c := [5]int{32, 29, 78, 16, 81} // 배열을 선언할 때 var 키워드, 자료형과 길이 생략 ...을 사용하면 초기화할 값의 개수에 따라 자동으로 크기가 설정된다. c := [...]int{32, 29, 78, 16, 81}..