我需要为偶数和赔率得到两条单独的线,但要注意的是,我只能使用一个 while 循环
I need to get two separate lines for evens and odds, but the catch is, I can use only one while loop
这是我的代码:
int numb = 50;
int odd;
int even;
while (numb <= 100) {
if (numb % 2 == 0) {
even = numb;
System.out.println(even);
System.out.print(", ");
numb++;
}
System.out.println("");
if (numb % 2 != 0) {
odd = numb;
System.out.print(odd);
System.out.print(", ");
numb++;
}
}
到目前为止,它打印了两列答案,但我需要将偶数行和赔率行分开。我做错了什么?
您可以使用两个 StringBuilder
并继续将 sOdd
和 sEven
附加到相应的 StringBuilder
并在循环之后打印它们。
类似的东西
StringBuilder sOdd = new StringBuilder("");
StringBuilder sEven = new StringBuilder("");
while (numb <= 100) {
if (numb % 2 == 0) {
sEven.append(numb).append(",");
}
if (numb % 2 != 0) {
sOdd.append(numb).append(",");
}
numb++;
}
System.out.println(sEven.toString()+"\n"+sOdd.toString());
如果你对单个 while 循环和常量额外的东西很挑剔space你可以这样做:
int numb1 = 50,numb2=51;
while (numb1 <= 100 || numb2<=100)
{
if (numb1<=100)
{
System.out.print(numb1);
System.out.print(", ");
numb1=numb1+2;
}
else if (numb2<=100)
{
if(numb2==51)
System.out.println();
System.out.print(numb2);
System.out.print(", ");
numb2=numb2+2;
}
}
这是我的代码:
int numb = 50;
int odd;
int even;
while (numb <= 100) {
if (numb % 2 == 0) {
even = numb;
System.out.println(even);
System.out.print(", ");
numb++;
}
System.out.println("");
if (numb % 2 != 0) {
odd = numb;
System.out.print(odd);
System.out.print(", ");
numb++;
}
}
到目前为止,它打印了两列答案,但我需要将偶数行和赔率行分开。我做错了什么?
您可以使用两个 StringBuilder
并继续将 sOdd
和 sEven
附加到相应的 StringBuilder
并在循环之后打印它们。
类似的东西
StringBuilder sOdd = new StringBuilder("");
StringBuilder sEven = new StringBuilder("");
while (numb <= 100) {
if (numb % 2 == 0) {
sEven.append(numb).append(",");
}
if (numb % 2 != 0) {
sOdd.append(numb).append(",");
}
numb++;
}
System.out.println(sEven.toString()+"\n"+sOdd.toString());
如果你对单个 while 循环和常量额外的东西很挑剔space你可以这样做:
int numb1 = 50,numb2=51;
while (numb1 <= 100 || numb2<=100)
{
if (numb1<=100)
{
System.out.print(numb1);
System.out.print(", ");
numb1=numb1+2;
}
else if (numb2<=100)
{
if(numb2==51)
System.out.println();
System.out.print(numb2);
System.out.print(", ");
numb2=numb2+2;
}
}