LoginSignup
18
19

More than 5 years have passed since last update.

Golang超基本構文メモ

Last updated at Posted at 2015-05-07
  • CodinGameで遊んでる時にすぐ頭に浮かばなかった構文をまとめてます.
  • import文は省略しています.

配列・文字列長

    len(arr)

string->int

    val, _ := strconv.Atoi("100")

string->float

    val, _ := strconv.ParseFloat("1.5", 64)

Upper/Lower

    strings.ToUpper("hoge")
    strings.ToLower("HOGE")

Index/LastIndex

   strings.Index("chicken", "ken")
   strings.LastIndex("hoge.png", ".")

HasPrefix(startsWith)/Suffix(endsWith)

    strings.HasPrefix("aiueo", aiu)
    strings.HasPrefix("aiueo", eo)

Trim

    strings.Trim(val, " ")

文字列カット(slice)

    str[5:10] // start:end (lengthではない)
    str[5:]
    str[:10]

文字列split

    arr := strings.Split("a,b,c", ",")

文字(char/rune)->int

    val := int('Z')

配列初期化

    arr := make([]string, 99)

Map初期化

    dic := make(map[string]string)

リスト回し

    for _, obj := range list {
    }

ソート

    arr := make([]int, 100)
    //...
    sort.Ints(arr)

Switch

    switch val {
        case 0: 
        case 1: 
        case 2: 
        default: 
    }

三項演算子

  • ない

可変長引数

func Hoge(args ...int) int {
    piyo := args[0]

struct定義

type KeyVal struct {
    key string
    val string
}

// メソッド定義
func (obj *KeyVal) check(key string) string {
    if obj.key == key {
        return obj.val
    }
    return ""
}

    // 使う時
    var kv KeyVal
    kv.key = "hoge"
    kv.val = "piyo"
    kv.check("hoge")

    // もしくはこう
    kv := KeyVal{key: "hoge", val: "piyo"}
18
19
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
19