-1

たとえば、変数var1、var2、var3、....がたくさんある場合、インデックスiを使用してそれらを簡単に操作するにはどうすればよいですか

for(int i=1,i<n;++i)
    System.out.print(vari);

私はそれが正しくないことを知っていますが、この方法で変数を操作する可能性があるかどうか知りたいです

4

3 に答える 3

2

それらを List または array YourClass[] に追加し、次のように繰り返し処理します。

List<Cat> catsList = new ArrayList<>();
Cat[] catsArray = new Cat[3]; //alternatively
public CatHouse(){
    Cat bob = new Cat();
    Cat fluffy = new Cat();
    Cat tom = new Cat();
    catsList.add(bob);
    catsList.add(fluffy);
    catsList.add(tom);
    //alternatively
    catsArray[0] = bob;
    catsArray[1] = fluffy;
    catsArray[2] = tom;
}

次に、list\array を反復処理して何かを行います。

public void groomAll(){
    for (Cat cat : catList){
       cat.groom();
    }
    //alternatively
    for (Cat cat : catArray){
       cat.groom();
    }
}
于 2015-01-17T11:49:41.967 に答える
1

コレクションを使用しない理由はありますか? たとえば、配列、リスト、さらにはマップです。

私の答えは、これらの構造のいずれかを使用することです。それ以外の場合、より簡単な方法があるとは思いません。

私が思いつくことができる最も近いものはこれです:

Map<String, Object> map = new HashMap<>();
for(int i=1; i<map.size(); i++) {
    System.out.println(map.get("var"+i));
}
于 2015-01-17T11:42:55.237 に答える