0

私はJAVAでを宣言しました。別の2D配列のインデックスとしてstring array d={monday,tuesday,wednesday}使用したいのですが、そうすると、月曜日が火曜日になります。"d"e[d][t]d++

4

5 に答える 5

3

探しているようです

List<String> indexes = new ArrayList<String>();
Map<String, String> map=  new HashMap<String, String>();
//iterate through each keys
for(String index: indexes){
  String value  = map.get(index);
}
于 2012-06-20T17:47:22.683 に答える
0

デザインをより明確にするために、ハッシュマップを使用する方がよいでしょう。考えられる解決策は次のとおりです。

List<Integer> indices = new ArrayList<Integer>();
Map<Integer, String> map=  new HashMap<Integer, String>();

Integer i= 0;

while(some condition){

   String str= map.get(i++);
}
于 2012-06-20T18:06:00.710 に答える
0

C++の場合、++演算子をオーバーライドして配列内の要素をインクリメントすることはできましたが、Javaでは不可能でした(私の最初の見解によると)。

まだ検索中ですが、スレッドを開いたままにしてください。

于 2012-06-20T17:58:14.100 に答える
0

この列挙型マップは、意味のある数値順序で文字列値を表す最良の方法です。ただし、これでもハッシュマップの実装を使用します。それは次のようになります

HashMap<Weekday, ArrayList> = ...

その後、すべての曜日を簡単にループして値を取得できます。

ただし注意。最近アクセスしている値の種類について具体的ではありません。おそらくより多くの文字列。あなたは何を表現しようとしていますか、または達成しようとしていますか?

于 2012-06-20T20:16:29.827 に答える
0

まあ、あなたは列挙型を使うことができます

public enum FOO
{
monday(0),tuesday(1),...;
private int index;
private FOO(int index){ this.index = index; }
public int getIndex(){ return index; }
}

そうすれば、できるようになります

FOO d = FOO.monday;
some_array[d.getIndex()][some_index];

また、ある種の関数 getNext() を実装して、列挙型で翌日を取得することもできます。

于 2012-06-20T18:28:28.397 に答える