Goの25のキーワード

1422 ワード

  • package定義パッケージ
  • importインポートパッケージ
  • func定義関数
  • const定義定数
  • var定義変数
  • if条件分岐文
  • else条件分岐文
  • switchはifの代わりに使用できます...else if...else
  • caseはswitchとともに
  • を用いる.
  • defaultはswitchで使用され、else文
  • に等しい.
  • forループ文
  • breakループ文
  • からジャンプ
  • continue当サイクル
  • をスキップ
  • fallthrough次のcase文
  • の実行を続行
  • goto指定文行
  • へジャンプ
  • return関数は
  • を返します.
  • range forサイクルにおける反復配列(array)、スライス(slice)、チャネル(channel)、または集合(map)の要素
  • に用いる.
  • map無秩序キー値ペアの集合
  • interface定義インタフェース
  • struct定義構造体
  • type定義タイプ
  • chan定義チャネル
  • select実行するチャネル
  • を選択する.
  • go並列実行
  • defer遅延実行
  • package main
    
    import "strings"
    
    const ALL_WORDS = "break case chan const continue default defer else fallthrough for func go" +
        " goto if import interface map package range return select struct switch type var"
    
    type Keyword struct{ name string }
    
    func main() {
        keywordMap := map[string]interface{}{}
        for _, w := range strings.Split(ALL_WORDS, " ") {
            keywordMap[w] = Keyword{name: w}
            switch {
            case w == "break":
                continue
            case w == "case":
                fallthrough
            default:
                goto breakLabel
            }
        breakLabel:
            break
        }
    
        var ch chan int = make(chan int)
        go func(ch chan int) { ch