首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java :我怎样才能将计数器加到最大值

Java :我怎样才能将计数器加到最大值
EN

Stack Overflow用户
提问于 2014-12-23 23:17:33
回答 3查看 156关注 0票数 0

很抱歉这个问题很含糊,我不太确定怎么说才好。到目前为止,我有以下代码,它可以工作,但我希望它仍然添加用户输入的数量。例如,如果给定的初始值是4000,我仍然希望它在告诉用户它已达到最大容量之前添加3000。

代码语言:javascript
运行
复制
{
       if (((var1+var2) >= 0) && ((var1+var2) < 3000)) { 
                  var1 = var1 + var2;

       }
       else{
            System.out.println("This box has reached its maximum capacity");
       }


} 

此外,我如何添加一条消息,告诉用户盒子快满了,比如2900-2999,但是当盒子达到极限时,它还没有显示出来吗?

谢谢。

EN

回答 3

Stack Overflow用户

发布于 2014-12-23 23:28:25

我会给你几个不同的选择,因为你的问题有点模糊。一种选择是用你的“给定数量”替换3000。

代码语言:javascript
运行
复制
{
   int amtGiven = //however you obtained this value
   if (((var1+var2) >= 0) && ((var1+var2) < amtGiven)) { 
              var1 = var1 + var2;

   }
   else{
        System.out.println("This box has reached its maximum capacity");
   }


} 

同样,如果您想要将此内容添加到现有边界中:

代码语言:javascript
运行
复制
{
   int amtGiven = //however you obtained this value
   if (((var1+var2) >= amtGiven) && ((var1+var2) < amtGiven+3000)) { 
              var1 = var1 + var2;

   }
   else{
        System.out.println("This box has reached its maximum capacity");
   }


}

返回到您的原始代码来解决您关于接近的问题,您应该探索条件分支的更多选项。在这种情况下,嵌套的if子句:

代码语言:javascript
运行
复制
{

   if (((var1+var2) >= 0) && ((var1+var2) < 3000)) { 

       if(var1+var2 >= 2900){
            System.out.println("This box is getting close to its maximum capacity")
       }

              var1 = var1 + var2;

   }
   else{
        System.out.println("This box has reached its maximum capacity");
   }


}

您还应该考虑is var1+var2 <0的另一种情况,因为盒子还没有达到它的最大容量,因此对于您的程序来说是一个特例。

编辑:

根据你的评论,我认为你想要这样的东西:

代码语言:javascript
运行
复制
{
   //this assumes maximumcapacity was defined in the constructor.
   if (((var1+var2) >= 0) && ((var1+var2) < maximumcapacity)) { 
              var1 = var1 + var2;

         //this is where you could add a bit for getting close to max capacity, see above example


   } 
   else{
        System.out.println("This box has reached its maximum capacity");
   }


} 

如果你有更多的问题,欢迎编码和评论!

票数 0
EN

Stack Overflow用户

发布于 2014-12-23 23:45:13

代码语言:javascript
运行
复制
   int amt = var1 + var2; 
   if (amt >= 0 && amt < 3000) {  var1 += amt;  }
   if(var1 >= 2900 && <= 2999) {  System.out.println("near cap."); }
   else if(var1 >= 3000){ System.out.println("reached max cap."); }
票数 0
EN

Stack Overflow用户

发布于 2014-12-23 23:25:38

在程序中将var1和var2初始化为零。

代码语言:javascript
运行
复制
 if (((var1+var2) >= 0) && ((var1+var2) <= 3000)) { // check if the value is with in the limits 

       if(var1 >= 2900 && var1 <=2999) // check if reached maximum capacity

           System.out.println("This box has reached its maximum capacity");

           var1 = var1 + var2; // add the values based on first if condition
           }
           else{
                // to do if condition fails
           }
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27623165

复制
相关文章

相似问题

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