
はじめまして。
今回初めてハッシュテーブルを利用するのですが、不明な点があり、こちらへ質問を投稿させていただきました。
Hashtable ht = new Hashtable();
string[] str = {"明日","明後日","明々後日"};
ht["after"] = str;
以上のようにキーafterの値へ配列の代入を行ったのですが、値の配列を直接操作する方法がわからず困っております。
//値の[0]より文字列「明日」を取り出したい
string val = (string[])ht["after"][0];
ためしに上記の様に書いてみたものの、ビルド時に「角かっこ [] 付きインデックスを 'object' 型の式に適用することはできません。」というエラーが発生します。
初歩的な内容かと思いますが、お分かりになる方がおりましたら、ご回答のほどよろしくお願いいたします。
環境 VisualC# 2005 Express Edition
No.1ベストアンサー
- 回答日時:
普段VB.NETユーザーで、未検証の勘です。
string val = ( (string[])ht["after"]) [0];
という計算順序として認識されているならいいんですが,
string val = (string[]) (ht["after"] [0]);
という計算順序として扱われると
ht["after"] が Object、
それに大して0番目って何よ!?
って言われるんじゃないかと。
#ところで,Genericsの型として配列って渡せるのかなー
http://unboxedsolutions.com/sean/archive/2005/07 …
himajin100000様
回答ありがとうございます。ご指摘いただきました通り演算子優先順位の誤りで、例として挙げていただきました記述にてビルドしましたところ、正常にハッシュテーブルの値の配列を参照することができました。
string val = ((string[])ht["after"])[0];
初歩的な内容についてわかりやすくご指摘いただき、本当にありがとうございました。
No.2
- 回答日時:
himajin10000様
このような優先順位があるとは知りませんでした。是非参考にさせていただきます。
この度はありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【C#】ハッシュテーブル(連想...
-
[Ljava.lang.Stringってなんですか
-
この警告はどうすれば?
-
【Ajax通信&Java】配列の受け取...
-
strutsでの配列の扱い方について。
-
C言語でunsigned char配列を連...
-
javaでEUC-JP文字列→UTF-8への変換
-
Javaで文字と数字が混ざったも...
-
配列をセッションに割り当てた後で
-
同じ配列またはクラスを、2回...
-
String型をbyte型へ
-
jspでの二次元配列
-
C#で配列の戻り値について
-
C言語のポインターに関する警告
-
IF関数でEmpty値を設定する方法。
-
ORA-01858: 数値を指定する箇所...
-
ループ処理の際、最後だけ","を...
-
System.err. printlnとSystem.o...
-
System.exit()の値を取得したい
-
動的配列が存在(要素が有る)か...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[Ljava.lang.Stringってなんですか
-
Javaで文字と数字が混ざったも...
-
この警告はどうすれば?
-
配列の中に複数存在する数がい...
-
【C#】ハッシュテーブル(連想...
-
ページング
-
C#の質問
-
n番目に大きな値を探索する
-
javaでデータベース(mysql)か...
-
C#で動的配列Listの中身をListB...
-
C言語でunsigned char配列を連...
-
同じ配列またはクラスを、2回...
-
Javaで文字を漢字であるか否か...
-
ArrayListからBean配列に値をセ...
-
Java配列の問題を教えてくださ...
-
ランダムでのboolean値の与え方
-
配列で、値の入っている要素数...
-
strutsで2次元配列をやりとりす...
-
java StringとString[]の違い
-
javaでEUC-JP文字列→UTF-8への変換
おすすめ情報