Java 在表格行中循环三个按钮的算法
Java 在表格行中循环三个按钮的算法,java,android,loops,android-button,Java,Android,Loops,Android Button,int numberofbutton=x 我试图循环,但失败了,因为numberofbutton必须能被3整除。我不会写算法 基于numberofbutton,我们必须以编程方式在一个表行中循环三个按钮。 我的意思是,如果numberofbutton是4 TableRow[0]->Button Button Button TableRow[1]->Button TableRow[0]->Button Button Button 如果是3 TableRow[0]->B
int numberofbutton=x将提供代码>
我试图循环,但失败了,因为numberofbutton
必须能被3整除。我不会写算法
基于numberofbutton
,我们必须以编程方式在一个表行中循环三个按钮。
我的意思是,如果numberofbutton是4
TableRow[0]->Button Button Button
TableRow[1]->Button
TableRow[0]->Button Button Button
如果是3
TableRow[0]->Button Button Button
TableRow[1]->Button
TableRow[0]->Button Button Button
更新:
根据邹祖的回答,代码如下,但未解决,因为tr[]未定义:
int bn = 9;
if (bn % 3 == 0) {
TableRow[] tr = new TableRow[bn / 3];
for (int i = 1; i <=(bn / 3); i++) {
tr[i] = new TableRow(this);
}
} else {
TableRow[] tr = new TableRow[(bn / 3) + 1];
for (int i = 1; i <=(bn / 3) + 1; i++) {
tr[i] = new TableRow(this);
}
}
Button[] b=new Button[bn];
for(int i=1;i<=bn;i++){
b[i]=new Button(this);
}
int index = -1;
for (int i = 0; i < bn; i++) {
if(i%3==0){
index+=1;
tr[index].addView(b[i]);
}else{
tr[index].addView(b[i]);
}
}
int bn=9;
如果(bn%3==0){
TableRow[]tr=新的TableRow[bn/3];
对于(int i=1;i,您可以使用模来执行此类操作:
int index = -1;
for(int i = 0; i < numberButtons; i++){
if(i%3 == 0) {
index += 1;
tableRow[index] <- add Button here //here it's a new row we update the index
}
else
tableRow[index] <- add Button here //we can add button to the current index
//because there are less than 3 buttons
}
int索引=-1;
for(int i=0;i tableRow[index]添加按钮时,哪个数组值?我是指按钮[index]或按钮[i]?是否每次都添加新按钮或现有按钮?请查看我的问题更新。无法解决有关声明tableRow[]的问题。您必须声明tableRow[]tr
退出你的if语句。@RedHat\u父亲看到我的更新了吗!!wtf???-1关于这个问题。还没有人能提供完整的例子。人-1必须解决这个问题。否则他/她可能是个傻瓜,做-1。
int bn = 9;
if (bn % 3 == 0) {
TableRow[] tr = new TableRow[bn / 3];
for (int i = 1; i <=(bn / 3); i++) {
tr[i] = new TableRow(this);
}
} else {
TableRow[] tr = new TableRow[(bn / 3) + 1];
for (int i = 1; i <=(bn / 3) + 1; i++) {
tr[i] = new TableRow(this);
}
}
int bn = 9;
TableRow[] tr = null;
if (bn % 3 == 0) {
tr = new TableRow[bn / 3];
for (int i = 1; i <=(bn / 3); i++) {
tr[i] = new TableRow(this);
}
} else {
tr = new TableRow[(bn / 3) + 1];
for (int i = 1; i <=(bn / 3) + 1; i++) {
tr[i] = new TableRow(this);
}
}