pbj0812의 코딩 일기

[Go] function 본문

ComputerLanguage_Program/Go

[Go] function

pbj0812 2020. 3. 12. 23:00

0. 목표

 - Go 의 function 기능 숙지

1. 코드

 1) mutlply

  - input, output 에는 타입을 지정해줘야 함(int)

  - 여러개의 return 사용 가능

 2) repeat

  - 여러개의 input을 넣기 위해서는 함수 생성시 input의 타입 앞에 ...을 붙여줌

 3) lendAndUpper

  - 함수 생성시 output의 자리에 변수 명 입력시 return 뒤에 값을 입력하지 않아도 됨(naked return)

  - defer 사용시 함수 종료 후에 실행

package main

import (
	"fmt"
	"strings"
)

// 1 multiple return
func multiply(a int, b int) (int, int) {
	return a * b, a * a * b
}

// 2 multi argument
func repeat(words ...string) {
	fmt.Println(words)
}

// naked return, defer
func lenAndUpper(name string) (length int, uppercase string) {
	defer fmt.Println("End")
	length = len(name)
	uppercase = strings.ToUpper(name)
	return
}

//start point
func main() {
	// 1
	fmt.Println(multiply(2, 2))
	result1, result2 := multiply(3, 4)
	fmt.Println(result1, result2)
	// 2
	repeat("a", "b", "c")
	// 3
	totalLength, up := lenAndUpper("pbj")
	fmt.Println(totalLength, up)
}

2. 결과

4 8
12 36
[a b c]
End
3 PBJ

3. 참고

 - 쉽고 빠른 Go 시작하기(노마드코더)

'ComputerLanguage_Program > Go' 카테고리의 다른 글

[Go] 조건문, variable expression  (0) 2020.03.13
[Go] for, range  (0) 2020.03.12
[Go] 변수, 상수 지정  (0) 2020.03.12
[Go] Package 생성, Import 하기  (0) 2020.03.12
[Go] main.go  (0) 2020.03.12
Comments