Java-如何只接受正数

Java-如何只接受正数,java,input,numbers,decimal,Java,Input,Numbers,Decimal,我写了一个程序,需要用户输入(价格)并给出所有价格的总和作为输出。当然,价格不能是负数,所以我的问题是:这个程序如何只接受正数?你想要这样的东西吗 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Enter a p

我写了一个程序,需要用户输入(价格)并给出所有价格的总和作为输出。当然,价格不能是负数,所以我的问题是:这个程序如何只接受正数?

你想要这样的东西吗

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("Enter a price: ");
        double number = input.nextDouble();
        while (number < 0 ) {
            System.out.print("Sorry, but your price must be a positive decimal. Enter a price:  ");
            number = input.nextDouble();
        }
        System.out.println("Your price is " + number);
    }
}
import java.util.Scanner;
公共班机{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(System.in);
系统输出打印(“输入价格:”);
double number=input.nextDouble();
while(数字<0){
System.out.print(“对不起,您的价格必须是正小数。请输入价格:”);
number=input.nextDouble();
}
System.out.println(“您的价格是”+数字);
}
}

使用while循环不断重新检查输入的价格是否符合您的标准

您将使用一个循环,并不断要求用户输入正确的值,一旦用户输入正确的值,就退出循环。我该怎么做?我需要在条件为正时使某个值为真(因此我可以想到)。但是我如何继续要求重新输入值呢?
而(某个值<0){再次询问用户,然后更新值}
谢谢继续。我已经解决了我的问题。为了将来的参考,你会想用你已经编写/尝试过的代码发表一篇文章,并征求建议/更正。如果你在还没有向我们展示你的努力的情况下发布一个关于代码的问题,你会被否决很多。谢谢,我会尝试一下,同时让我知道它是否对你有效。谢谢Matthew,它作为aspected有效。