「Dictionary」タグアーカイブ

SuperColliderで連想配列を使うDictionaryクラスの概説。 #supercollider

SuperColliderで用意されているDictionaryクラスに初挑戦してみた。

連想配列と一口に言っても言語によって実装はまちまち。PHPでは配列と連想配列に区別はなくどちらもArrayだし、Javascriptでは連想配列はオブジェクトとして扱われ配列とは別だ。ま、詳しくはないんだけど、とにかく各言語によって違うのは確か。

ちなみに、スパコと同じくSmalltalkの系譜を引くObjective-Cにはその名もズバリNSDictionaryクラスが存在する。ので、手持ちのCocoaプログラミングの本で辞書のページを引いてみたがやはりひと言で説明するのは難しい。まぁ、平たく言うとキーと値をセットにして複数保存しておける仕組みのことだ。

使いかたは、newメッセージで辞書を作りaddメッセージで辞書に項目を足していく。

d = Dictionary.new;
d.add('monkey' -> 0).postln;
d.add('robot' -> 1).postln;

このコードで↓のような辞書ができる。

Dictionary[ (monkey -> 0), (robot -> 1) ]

辞書ができたら引かなければならない。参照するには配列と同じatメッセージを使う。

d.at('robot');

この結果はrobotをキーとする値だから、「1」になる。削除は同様にremoveAtメッセージを使う。

続きを読む SuperColliderで連想配列を使うDictionaryクラスの概説。 #supercollider