我的java程序没有循环

时间:2016-08-26 08:25:07

标签: java loops while-loop

所以这是我的第一个循环,当我执行它时,它说, "输入第1项和第34项的价格; ,当我给它一个输入时,它显示输出而不会循环甚至一次

import java.util.Scanner;
public class Loop
{
    public static void main(String[] args)
    {
        Scanner input=new Scanner(System.in);

        int value;
        int sum=0;
        int number=1;
        while (number > 6);

        {   
            System.out.println("Enter the price of item"+number);
            value = input.nextInt( );
            sum=sum+value;
            number=number+1;
        }

double vat=value*0.15;
double total=value+vat;
System.out.println("The Total cost is $"+value+" \n The Value added tax is $"+vat+"\n The total cost including Value Added Tax is $"+total);
      }
  }
有人可以帮帮我吗?

5 个答案:

答案 0 :(得分:3)

这里有几个问题

 int number=1;
 while (number > 6);

数字小于6,因此永远不会进入

之后删除分号

答案 1 :(得分:2)

您定义

    int number=1;

你测试

   while (number > 6);
    {   
    <some code>
    }

由于数字为1,因此永远不会满足条件。

还有另一个问题:如果你只纠正条件,那么分钟后的分号会导致无限循环

固定代码:

   while (number < 6)  // <- no semicolon & correct comparison
    {   
        System.out.println("Enter the price of item"+number);
        value = input.nextInt( );
        sum=sum+value;
        number=number+1;
    }

答案 2 :(得分:0)

这是因为您的号码首先不是> 6。所以它永远不会满足循环的进入条件,因为显然1不大于6.相反,你想循环< 6。您还需要暂时删除;

因此,请尝试替换它:

int number=1;
while (number < 6)
{   
    System.out.println("Enter the price of item"+number);
    value = input.nextInt( );
    sum=sum+value;
    number=number+1;
 }

答案 3 :(得分:0)

条件不好,将while (number > 6);更改为while (number < 6),删除后删除;过了一会儿

答案 4 :(得分:0)

首先, while 语句后面有一个分号。

    while (number > 6);

虽然它不是语法错误但是当你想循环时,必须省略分号。

其次,数字初始化为 1 ,而while循环检查 1&gt; 6 ,这是假的。