gpt4 book ai didi

java - 优化java赋值

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:58:23 25 4
gpt4 key购买 nike

我有一些共享同一个根的绑定(bind),有没有一种方法可以使用遍历所有绑定(bind)的 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);
....
}

可以使用反射来使这段代码不那么冗长吗?我的主要兴趣是让绑定(bind) > 40 RadioGroupsTextViews 变得更容易。

最佳答案

你可以试试这个

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);
}

关于java - 优化java赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38684939/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com