個人的なgo言語に関する備忘録

ここ最近のgo言語に関して知った事や思った事の備忘録。

mapの中身を探すには?

ある値がmapのキーにあるかどうかを判定
例えば,map型のmapdataとし,keyかどうかを判定したい変数をkeydataとすると

if _, ok := mapdata[keydata]; ok {
   // keydataがmapdataにあれば
}

って感じで書けば動いてくれる。

検索するときはgolang

goはgolangという名称が一般的かも。googleに'''go'''だけいれて尋ねても気の利いた答えは帰ってこない…。

case文

switch文はcase を続けてかいてもだめ。
case の後に条件をカンマ区切りで続けて書かないといけない。

例えば結構C++とかで

switch( type ){
  case 1:
  case 2:
     printf("test");
  break;

なんて感じで書けばtypeが1の時と2の時にtestってコンソールで表示されるけれど,同じようにgoでやったら

type := 1
switch( type ){
  case 1:
  case 2:
    println("test")
}

これだとtestとは表示されない。

case 1,2:

と書かないと!

メモリ上の日本語をそのままJSONで渡してもいい

最近の言語だし,内部はすっかりユニコード
ということで,コードに埋め込んだメモリ上の日本語をそのままJSONとしてクライントに返しても期待通り動いてくれます。
これは楽です!文字コードとか変換とかアレコレ気にしないですむのはいい。