当前位置: 首页 > 知识库问答 >
问题:

在Java中何时使用post增量和pre增量[重复]

关冠宇
2023-03-14

我知道在StackOverflow上有许多关于这个主题的问题。但我仍然有点困惑,不确定何时使用这些操作。我在为考试做准备时正在经历旧的考试。其中一个方法返回残障、可访问和可用教室的数量。我写了counter方法,但不确定我应该对计数器进行预增量还是后增量。我对它如何与方法中的return语句一起工作感到困惑。我仍然没有得到该方法将在下面返回的值。其他问题没有在方法中显示返回值,因此我对它实际上是如何工作的感到困惑。代码如下:

  public int howManyHandi()
{
    int counter= 0;
    for (int i = 0; i < _clsrms.length; i++){
        if (_clsrms[i].handicappedSuitable() && _clsrms[i].isAvailable()){
            ++counter;
        }
    }
    return counter;
}  

共有1个答案

厍建义
2023-03-14

PRE-increment用于在表达式中使用变量的递增值,而POST-increment则在递增前使用原始值。

每当代码遇到预增量时,它就会在内存中递增该变量的值,然后加载该值并继续读取表达式。

POST-increment则相反,它将该变量的值加载到内存中,然后递增该值并继续读取表达式。

为了使它更清楚,考虑以下内容

int i = counter++;

相当于

int i = counter;
counter = counter + 1;
int i = ++counter;
counter = counter + 1;
int i = counter;

我想说的是,只有当你在表达式中使用那个值时才重要。

sum = 0
counter = 0;
sum = (++counter)+(++counter)+(counter++)

评估为

sum = 0
counter = 0
//For first ++counter
counter = counter + 1
sum = counter

//For second ++counter
counter = counter + 1
sum = sum + counter

//For first counter++
sum = sum + counter
counter = counter + 1
 类似资料:
  • 问题内容: 我了解对此主题有很多疑问。但是我仍然有些困惑,不确定何时使用这些操作。我正在为参加考试而做的旧考试。其中一种方法返回可访问的残疾人可用教室的数量。我编写了counter方法,但不确定是应该先递增还是递后递增计数器。我对它如何与方法中的return语句混淆。我仍然不知道该方法将在下面返回什么值。其他问题未在方法中显示返回值,因此我对它的工作方式感到困惑。这是代码: 问题答案: 当您要在表

  • 问题内容: 我在本地计算机上使用WAMP,提交具有2000个输入字段的FORM(method =“ POST”)时,我只能读取1001 _POST变量。即使用Netbeans调试器,如果表单中有多个1001输入字段,我可以清楚地看到_POST大小始终为1001。 我使用此http://ideone.com/GAw14 Java代码生成具有N个输入字段的表单并进行了测试。 在另一台机器(WAMP)上

  • 问题内容: 我的程序的一部分需要在while循环内使用以下值: 0.1 0.2 0.3 … 0.9 所以我需要在循环中提供它们。 这是代码: 我需要输出准确: 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 但这实际上给了我类似的东西: 0.1 0.2 0.300000000000000000000000004 0.4 0.5 0.6 0.79999999999999999

  • 有了这个答案的帮助,我可以用Python计算时间增量列表的平均值。 是否有一种解决方案可以获得列表中时间增量的中值?

  • 问题内容: 我正在做一些有关Java的研究,发现这很令人困惑: 这是永无止境的循环! 有人很好地解释了为什么会发生这种事情吗? 问题答案: 上面的循环与以下内容基本相同:- 3 次你的一部分声明- ,被评估为: - 您需要从此处删除分配,以使其起作用:- (根据评论的OP请求) 的行为:- 就注释中指定的问题而言,以下表达式的结果:- 获得如下:- 让我们标记第二条语句的不同部分:- 现在,首先将

  • 问题内容: 为什么当我在做时它起作用,但是当我在做时: 它不起作用? 为什么,以及如何解决? 完整代码: 但是这段代码可以正常工作: JSFiddle:https ://jsfiddle.net/69z2wepo/55100/ 问题答案: 这样一来,您就可以改变状态,因为它和做是同一件事。您永远不要改变状态(请参阅https://facebook.github.io/react/docs/comp