我从我的任务中得到了一个问题,我找不到解决方案..
此数组声明12个变量..
boolean[] rowOfRotatoes = new boolean[12];
现在我必须一个接一个地分配真值和假值,
rowOfRotatoes[0] = true;
rowOfRotatoes[1] = false;
rowOfRotatoes[2] = true;
rowOfRotatoes[3] = false;
rowOfRotatoes[4] = true;
....
rowOfRotatoes[9] = true;
rowOfRotatoes[10] = false;
rowOfRotatoes[11] = true;
但我必须使用循环来做到这一点!
他们给了我一个填空的结构..
int plantingSpace = 0;
while(plantingSpace < 12) {
rowOfRotatoes[plantingSpace] = <Fill this space 1> <Fill this space 2> <Fill this space 3> == 0;
++plantingSpace;
}
如何使用上述结构一个接一个地分配true和false值?
答案 0 :(得分:4)
根据您的要求严格填写空格:
int plantingSpace = 0;
while (plantingSpace < 12) {
rowOfRotatoes[plantingSpace] = plantingSpace % 2 == 0;
++plantingSpace;
}
答案 1 :(得分:2)
您可以使用模运算符%
来执行此操作,方法是检查索引是否为偶数。这将导致作业的右侧在true
和false
之间交替。
int plantingSpace = 0;
while(plantingSpace < 12) {
rowOfRotatoes[plantingSpace] = plantingSpace % 2 == 0;
++plantingSpace;
}
答案 2 :(得分:1)
您只需使用切换布尔变量:
boolean[] rowOfRotatoes = new boolean[12];
int plantingSpace = 0;
boolean toggler = true;
while (plantingSpace < rowOfRotatoes.length) {
rowOfRotatoes[plantingSpace++] = toggler;
toggler = !toggler;
}
表示您可以通过更改变量的初始值来更改 true / false 条目的顺序。
答案 3 :(得分:0)
检查plantingSpace
每个循环是偶数还是奇数,并相应地设置你的布尔值true / false。
答案 4 :(得分:0)
容易的孩子......这样做
Boolean rowOfRotatoes[]=new Boolean[13];
int plantingSpace = 0;
while(plantingSpace < 12)
{
boolean value= (plantingSpace %2==0)?true:false;
rowOfRotatoes[plantingSpace] = value;
++plantingSpace;
}
这里我使用了三元运算符,它检查条件然后根据它返回false或true,然后它进入值。
(种植空间%2 == 0)?true:false
答案 5 :(得分:0)
这是一个解决方案,从数组的第一个元素开始,以true
作为值:
int plantingSpace = 0;
while(plantingSpace < 12) {
rowOfRotatoes[plantingSpace] = (plantingSpace % 2 == 0);
++plantingSpace;
}
<强>解释强>
表达式(plantingSpace % 2 == 0)
检查plantingSpace
除以2(= modulo)的余数是否等于零。
如果是(意味着plantingSpace
是偶数),则数组中的相应值将设置为true
。
如果不是(意味着plantingSpace
不均匀),则相应的值将设置为false
。