首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何不允许输入负数

如何不允许输入负数
EN

Stack Overflow用户
提问于 2022-04-04 13:05:37
回答 2查看 770关注 0票数 1

我已经尝试过Math.abs和if语句,但没有任何效果。我有点糊涂。我怎么能不接受在Java中使用for循环的负数,用户不能输入负数作为防御程序?取以下代码:

代码语言:javascript
复制
for(int i=0; i<arr.length; i++) {

    System.out.print("Νο. " + (i + 1) + ": ");
    arr[i] = input.nextDouble();

}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-04-04 13:12:57

将该值的读取包装在一个循环中。在用户输入非负值之前,不要退出循环。例如..。

代码语言:javascript
复制
for (int i=0; i<arr.length; i++) {
  while (true) {
    System.out.print("Νο. " + (i + 1) + ": ");
    arr[i] = input.nextDouble();
    if (arr[i] >= 0) {
      break;
    }
    System.out.println("Value cannot be negative");
  }
}
票数 1
EN

Stack Overflow用户

发布于 2022-04-04 13:32:51

我想您对Java非常陌生。欢迎来到Java的神奇世界:)

根据您的代码的外观,一个更“专业”的方法是抛出一个异常:您可以搜索一些Google并尝试自定义您的代码,以及它对异常的反应。

另一方面,这似乎是一个简单的项目,所以类似于

代码语言:javascript
复制
            Double a  = input.nextDouble();
            if(a > 0){
                System.out.println("No negative values allowed");
            }else{
                arr[i] = a;
            }

可能就够了

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

https://stackoverflow.com/questions/71737779

复制
相关文章

相似问题

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