Skip to content

Instantly share code, notes, and snippets.

View giwa's full-sized avatar

Ken Takagiwa giwa

  • Nombre Premier
  • Tokyo
View GitHub Profile
package main
import "fmt"
func main() {
// 基本的な型である。単一条件
i := 1
for i <= 3 {
fmt.Println(i)
package main
import "fmt"
func main() {
//例です。
if 7%2 == 0 {
fmt.Println("7 is even")
} else {
package main
import "fmt"
func main() {
// 5つのintを持つarrayを作ります。
// 要素の型と長さはarrayの型のである。
// 最初からarrayはzero valueである。intsの場合は0
var a [5]int
package main
import "fmt"
import "time"
func main() {
// 基本的な例
i := 2
fmt.Print("write ", i, " as ")
switch i {
package main
import "fmt"
func main() {
// arraysとは違い、slicesは中に入っている要素の型のみで定義されます。(要素の数は含まれない)
// 長さがゼロではないからのsliceを作るには、buildinのmakeを使用する。
// これは、長さが3のstringのsliceを作る例です。(値はzero valueで初期化されている。)
s := make([]string, 3)
package main
import "fmt"
func main() {
// 空のmapを作るためにbuildinのmakeを使います。
// make(map[key-type]val-type)
m := make(map[string]int)
package main
import "fmt"
func main() {
// ここではsliceの中の数字を合計するためにrangeを使います。
// arrayでも同じように動きます。
nums := []int{2, 3, 4}
sum := 0
package main
import "fmt"
// 2つのintを取りその合計を返す関数です。
func plus(a int, b int) int {
// Goは明示的なreturnが必要です。
// 例えば、最後の値を自動的に返すことはありません。
return a + b
@giwa
giwa / file0.go
Created February 5, 2015 17:25
Go by Examples: Multiple Return Values ref: http://qiita.com/giwa@github/items/2789d0ddf86bffb37f9f
package main
import "fmt"
//この関数において(int, int)はこの関数は2つのintを返すことを示します。
func vals() (int, int) {
return 3, 7
}
func main() {
@giwa
giwa / file0.go
Created February 5, 2015 17:33
Go by Example: Variadic Functions ref: http://qiita.com/giwa@github/items/49b122c2f9397b6d9a23
package main
import "fmt"
// この関数は任意の数のintを引数として受け入れます。
func sum(nums ...int) {
fmt.Print(nums, " ")
total := 0
for _, num := range nums {
total += num
}