- View the source.
- Go to SampleCodes/D言語文法/連想配列関連/1.
Cur: 2012-03-09 (Fri) 21:37:28 SHOO ![]() ![]() With "vote" plugin. at 2012-04-05 (木) 18:57:48 |
|||
---|---|---|---|
Line 1: | Line 1: | ||
+ | TITLE:連想配列の定義、初期化、参照 | ||
+ | // ページタイトルを記入しましょう | ||
+ | * 概要 [#u0d842be] | ||
+ | 連想配列は、 | ||
+ | 値の型名[キーの型名] 変数名; | ||
+ | として定義する。初期化は | ||
+ | 変数名[キー] = 値; | ||
+ | として行う | ||
+ | 変数名[キー]; | ||
+ | として値を参照する。 | ||
+ | * ポイント [#fd9f47bf] | ||
+ | 値の参照を行う際に、そのキーが登録されていない場合、例外が発生する。回避するには in を使用する | ||
+ | |||
+ | * サンプルコード [#f9699b29] | ||
+ | #code(d){{{ | ||
+ | import std.stdio; | ||
+ | |||
+ | void main() | ||
+ | { | ||
+ | // 定義 | ||
+ | string[string] assoc; | ||
+ | // 値の代入 | ||
+ | // assoc[key] = value; | ||
+ | assoc["あ"] = "a"; | ||
+ | assoc["か"] = "ka"; | ||
+ | assoc["さ"] = "sa"; | ||
+ | assoc["た"] = "ta"; | ||
+ | assoc["な"] = "na"; | ||
+ | // 値の参照 | ||
+ | // assoc[key] | ||
+ | writeln(assoc["あ"]); | ||
+ | // 値が入っているか確認 | ||
+ | if ("い" in assoc) | ||
+ | { | ||
+ | writeln("「い」は連想配列に含まれる"); | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | writeln("「い」は連想配列に含まれない"); | ||
+ | } | ||
+ | // 値を確認するついでに取り出して利用する | ||
+ | // 取り出した値の型は、この場合だと string* となる | ||
+ | if (auto tmp = "た" in assoc) | ||
+ | { | ||
+ | // そのため、アクセスするときは *tmp のように、ポインタを解除する | ||
+ | writeln("「た」=「"~*tmp~"」は連想配列に含まれる"); | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | writeln("「た」は連想配列に含まれない"); | ||
+ | } | ||
+ | } | ||
+ | }}} | ||
+ | * 実行結果 [#w2b3155d] | ||
+ | #code(console){{{ | ||
+ | a | ||
+ | 「い」は連想配列に含まれない | ||
+ | 「た」=「ta」は連想配列に含まれる | ||
+ | }}} | ||
+ | |||
+ | * 投票とコメント [#kf7383ad] | ||
+ | #vote(#lastvote:8a6685501aafeb6e5dd54557f4050eda,大変参考になった,参考になった[1],あまり参考にならなかった,まったく参考にならなかった,#notimestamp) | ||
+ | #pcomment |
- Backup diff of SampleCodes/D言語文法/連想配列関連/1(No. All)
- Cur: 2012-03-09 (Fri) 21:37:28 SHOO
- With "vote" plugin. at 2012-04-05 (木) 18:57:48
- Cur: 2012-03-09 (Fri) 21:37:28 SHOO
Page Info | |
---|---|
Page Name : | SampleCodes/D言語文法/連想配列関連/1 |
Page aliases : | None |
Page owner : | SHOO |
Can Read | |
Groups : | All visitors |
Users : | All visitors |
Can Edit | |
Groups : | All visitors |
Users : | All visitors |
Counter: 1970,
today: 1,
yesterday: 1