Java 使用while循环重复输出行?

Java 使用while循环重复输出行?,java,while-loop,Java,While Loop,我刚刚开始学习Java,仍然习惯于while循环。我希望输出语句只显示一次,而不是多次。例如,声明应该说: “1和5之间的偶数整数为:2 4” 而不是: “1到5之间的偶数整数为: 2. 介于1和5之间的偶数整数为: 介于1和5之间的偶数整数为: 4“ 如果我能得到一些关于我在这里做错了什么的反馈,我将不胜感激。谢谢 //Declare variables int n1, n2, sumOdd = 0; int sum = 0; int sumSquares = 0; //Part B i

我刚刚开始学习Java,仍然习惯于while循环。我希望输出语句只显示一次,而不是多次。例如,声明应该说: “1和5之间的偶数整数为:2 4”

而不是: “1到5之间的偶数整数为: 2. 介于1和5之间的偶数整数为: 介于1和5之间的偶数整数为: 4“

如果我能得到一些关于我在这里做错了什么的反馈,我将不胜感激。谢谢

//Declare variables 
int n1, n2, sumOdd = 0;
int sum = 0; 
int sumSquares = 0;

//Part B
int count = n1;
while (count < n2)
{    
    if (count % 2 ==0)
    {
        System.out.println(count);
    }
    count++;
    System.out.println("Even integers between " + n1 + " and " + n2 + " are: ");
} //end loop   
//声明变量
int n1,n2,sumOdd=0;
整数和=0;
整数平方=0;
//乙部
int计数=n1;
而(计数
在循环之前创建一个int数组或集合,当您在while循环中找到偶数时,在数组/集合中追加该数字

在执行
while
循环后,只打印一次输出,当然是打印找到的数字


我认为这很简单,我将实现部分留给您。

您应该将while循环的最后一部分从中去掉:

//Part B
  System.out.println("Even integers between " + n1 + " and " + n2 + " are: ");
  int count = n1;
  while (count < n2) {    
     if (count % 2 ==0) {
        System.out.print(" " + count);
     }
     count++;
  }
//B部分
System.out.println(“介于“+n1+”和“+n2+”之间的偶数整数为:”);
int计数=n1;
而(计数

由于您没有提到要在偶数之间使用逗号,那么将
println
替换为
print
就足够了

它们是实现您目标的不同方法。一个快速的解决办法是

System.out.println(“介于“+n1+”和“+n2+”之间的偶数整数为:”

在while循环前面,将System.println()替换为System.print()。

int n1,n2,sumOdd=0;
整数和=0;
整数平方=0;
System.out.print(“介于“+n1+”和“+n2+”之间的偶数整数为:”);
//乙部
int计数=n1;
而(计数
将打印语句移到
while
循环之外(和之后)。另外,您需要使用数组或集合来缓存匹配的数字,直到您准备好打印它们为止。我不会这样做,即使在正常情况下,它也可以。因为第一行无论如何都是打印出来的,所以对于错误/异常处理需求来说就不太好了。或者其他一些要求,比如,打印找到的数字的总数。。。等等。你是对的@Kent,但我相信在这种情况下,初学者获得一些如何使用循环及其结果的经验就足够了。你应该补充一点解释,因为OP显然是初学者
int n1, n2, sumOdd = 0;  
int sum = 0;   
int sumSquares = 0;  
System.out.print("Even integers between " + n1 + " and " + n2 + " are: ");

//Part B
int count = n1;
while (count < n2)
{    
    if (count % 2 == 0)
    {
        System.out.print(count);
    }
    count++;
} //end loop