首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何限制用户在java中输入一定范围内的数字?

如何限制用户在java中输入一定范围内的数字?
EN

Stack Overflow用户
提问于 2020-01-17 03:53:58
回答 2查看 6K关注 0票数 0

例如,在Java中,如果您想要求用户只输入1,000到100,000之间的数字,则该程序将继续执行。否则,要求用户在给定范围内再次输入数字。

编辑:在这里,我的程序只尝试验证输入一次。在输入有效数据(即1,000-100000之间)之前,如何要求用户输入

代码语言:javascript
运行
复制
public static void main(String args[]) {

    Scanner sc = new Scanner(System.in);    
    System.out.print("Principal:");
    double principal = sc.nextDouble();

    if(principal<1000 || principal >100000) {
        System.out.println("enter principal again:");
        principal = sc.nextDouble();        
    }
}
EN

回答 2

Stack Overflow用户

发布于 2020-01-17 04:25:34

可以在这里使用do-while循环,如下所示

代码语言:javascript
运行
复制
public static void main(String []args){
    Scanner in = new Scanner(System.in);
    int result;
   do {
       System.out.println("Enter value bw 1-100");
       result = in.nextInt();
   } while(result < 0 || result > 100);

    System.out.println("correct "+ result);

}
票数 1
EN

Stack Overflow用户

发布于 2020-01-17 23:23:05

代码语言:javascript
运行
复制
import java.io.*;
import java.util.*;
import java.lang.*;
import java.math.*;

class Myclass {

    static boolean isInteger(double number){
        return Math.ceil(number) == Math.floor(number); 
    }
    public static void main(String args[]) {

        Scanner in = new Scanner(System.in);    
        double num;
        do{
            System.out.print("Enter a integer between 1000 and 100000 : ");
            num = in.nextDouble();
        }
        while((num < 1000 || num > 100000)||(!isInteger(num)));

        System.out.println("Validated input  : "+num);

    }
}

希望这能对你有所帮助

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59776867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档