3
3

More than 5 years have passed since last update.

Haxeで連想配列

Last updated at Posted at 2014-09-04

haxeで連想配列を使おうとしたらつまづいた。
jsでいえばこんなやつである。

var hoge={};
hoge["fuga"]=1;

このノリで行くと下記のようにしたらできそうだけど、だめだった。

var hoge:Dynamic={};
hoge["fuga"]=1;//おこられる

実はMapなるクラスがあるので、keyとなる型とそこにぶっこむ型を
定義してあげると出来る。set/getのメソッドが用意されている。
as3でいうDictionaryみたいなもんかな?

var hoge:Map<String, Int> = new Map<String, Int>();
hoge.set("fuga", 1);
hoge.get("fuga");//1が取得できる

違う参照の仕方

Reflectというのを使うと、動的に変数の値を取得できる。

var a:Int = Reflect.getProperty(hoge, "fuga");
//hogeのfugaプロパティを参照。

Reflect参考: http://rsakane.net/memo/?p=121

ちなみにkeyの取得はこのようにする

for (k in _map.keys()) {
trace("key="+k);
trace("value="+_map.get(k));
}

以上、よくわかってないけど勉強中。

3
3
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
3
3