Skip to Content

入門Goプログラミング Lesson12(関数)から学んだこと

関数

値を受け取る時の型の書き方

型指定が必要なのは型が変わるところだけも可能
memo いまいち意味がわからない

func Unix(sec int64, nsec int64) time
func Unix(sec, nsec int64) time // 省略系

結果の型の書き方

結果の型を名前なしでリストにすることも可能

func Atoi(s string)(i int, err error)
func Atoi(s string)(int, error) // 省略系

結果を2つ返す例

realAgeに年齢を設定しageTo17sai関数に渡すと、n歳と、nヶ月の2つを返す

package main

import "fmt"

func ageTo17sai(a int) (int, int) {
	age := a
	month := 0

	if a > 17 {
		age = 17
		month = (a - 17) * 12
	}
	return age, month
}

func main() {
	realAge := 43
	age, ageMonth := ageTo17sai(realAge)
	fmt.Printf("%v歳は実際のところ%v歳%vヶ月になります", realAge, age, ageMonth)
}

実行結果

43歳は考え方によっては17歳312ヶ月になります

感想

関数はよく使うから使いながら慣れよう

参考

なし