优化java分配

优化java分配,java,android,Java,Android,我有一些共享同一根的绑定,有没有一种方法可以通过遍历所有绑定的while循环来缩短代码 RadioGroup G1, G2.. ... ...; // At class scope TextView result1... .. ..; /** ... */ public void bindViews() { G1 = (RadioGroup) findViewById(R.id.radioGroup1); G2 = (RadioGroup) findViewById(R.i

我有一些共享同一根的绑定,有没有一种方法可以通过遍历所有绑定的while循环来缩短代码

RadioGroup G1, G2.. ... ...; // At class scope
TextView result1... .. ..; 


/** ... */
public void bindViews() {
    G1 = (RadioGroup) findViewById(R.id.radioGroup1);
    G2 = (RadioGroup) findViewById(R.id.radioGroup2);
    G3 = (RadioGroup) findViewById(R.id.radioGroup3);
    G4 = (RadioGroup) findViewById(R.id.radioGroup4);
    G5 = (RadioGroup) findViewById(R.id.radioGroup5);
    G6 = (RadioGroup) findViewById(R.id.radioGroup6);
    G7 = (RadioGroup) findViewById(R.id.radioGroup7);
    G8 = (RadioGroup) findViewById(R.id.radioGroup8);
    G9 = (RadioGroup) findViewById(R.id.radioGroup9);
    G10 = (RadioGroup) findViewById(R.id.radioGroup10);
    G11 = (RadioGroup) findViewById(R.id.radioGroup11);
    G12 = (RadioGroup) findViewById(R.id.radioGroup12);
    G13 = (RadioGroup) findViewById(R.id.radioGroup13);
    G14 = (RadioGroup) findViewById(R.id.radioGroup14);
    G15 = (RadioGroup) findViewById(R.id.radioGroup15);
    G16 = (RadioGroup) findViewById(R.id.radioGroup16);
    G17 = (RadioGroup) findViewById(R.id.radioGroup17);
    G18 = (RadioGroup) findViewById(R.id.radioGroup18);
    G19 = (RadioGroup) findViewById(R.id.radioGroup19);
    G20 = (RadioGroup) findViewById(R.id.radioGroup20);
    ....
}
可以使用反射来减少代码的冗长吗? 我的兴趣主要是使绑定>40放射组和文本视图变得更容易。您可以试试这个

int count = 40;
RadioGroup G[] = new RadioGroup[count];
for(int i = 1 ; i < count ; i++){
   String temp = "radioGroup" + i;
   int id = getResources().getIdentifier(temp, "id", getPackageName());
   G[i] = (RadioGroup) findViewById(id);
 }
int计数=40;
放射组G[]=新放射组[计数];
对于(int i=1;i
事实上,我认为for循环更适合这里。在这种情况下,您可以使用增量索引的循环,但如果您想要一般性的东西,那么故事就不同了!除了
getResources(),这个问题可能会重复。getIdentifier
实际上比上面标记的重复问题慢。谢谢@cricket_007,我不知道。我将首先尝试执行它,然后更新代码。再次感谢。@ShubhamNandanwar知道为什么id是-1吗?