关于Java中的递增和递减运算符,有许多有趣的事实。我们将通过示例讨论其中的一些-
增量和减量运算符不能与'final'变量一起使用。这是由于与'final'关键字相关联的变量无法更改的事实-
public class Demo{ public static void main(String[] args){ final int my_val = 34; int my_val_2 = ++my_val; System.out.println("值是:"); System.out.println(my_val_2); } }
输出结果
/Demo.java:6: error: cannot assign a value to final variable my_val int my_val_2 = ++my_val; ^ 1 error
无法嵌套'++'和'--'运算符。
public class Demo{ public static void main(String[] args){ int my_val_1 = 99; int my_val_2 = ++(++my_val_1); System.out.println("The value is "); System.out.println(my_val_2); } }
输出结果
/Demo.java:6: error: unexpected type int my_val_2 = ++(++my_val_1); ^ required: variable found: value 1 error
问题内容: 我注意到,可以将预增减运算符应用于变量(例如)。它可以编译,但实际上并不会改变变量的值! Python中预增/减运算符(++ /-)的行为是什么? 为什么Python会偏离C / C ++中看到的这些运算符的行为? 问题答案: 不是运算符。它是两个运算符。该运营商的身份运营,这什么都不做。(澄清:和一元运算符仅对数字起作用,但是我假设你不会期望假设的运算符对字符串起作用。) 解析为 转
问题内容: 从下面或此处的程序中,为什么最后一次调用要打印该值7? 问题答案: 这将打印出“ 6”,因为它将i加1并返回值。5 + 1 = 6;这是前缀,在操作中使用该编号之前会添加该编号。 这将打印出“ 6”,因为它需要i,存储副本,加1并返回副本。因此,你获得了我当时的价值,但同时又增加了它。因此,你可以打印出旧值,但是它会增加。后缀增量的好处。 然后,当你打印出i时,它会显示i的实际值,因为
C++ 重载运算符和重载函数 递增运算符( ++ )和递减运算符( -- )是 C++ 语言中两个重要的一元运算符。 下面的实例演示了如何重载递增运算符( ++ ),包括前缀和后缀两种用法。类似地,您也可以尝试重载递减运算符( -- )。#include <iostream> using namespace std; class Time { private: int hours; // 0 到
问题内容: jslint工具的提示之一是: ++和- 已知++(递增)和-(递减)运算符会通过鼓励过多的技巧而导致不良代码。在支持病毒和其他安全威胁方面,它们仅次于错误的体系结构。有一个plusplus选项禁止使用这些运算符。 我知道像这样的PHP构造可能很容易导致一次错误的错误,但是我找不到比a 或更好的控制循环的方法。 jslint是否突出显示它们,是因为有些相似的语言缺少“”和“”语法或以不
在对一个变量做加 1 或减 1 处理时,可以使用自增运算符 ++ 或自减运算 --。 ++ 或 -- 是单目运算符,放在操作数的前面或后面都是允许的。++ 与 -- 的作用是使变量的值增 1 或减 1。 操作数必须是一个整型或浮点型变量。自增、自减运算的含义及其使用实例如表 1 所示。 表 1 自增、自减运算的含义及其使用实例 运算符 含义 实例 结果 i++ 将 i 的值先使用再加 1 赋值给
根据这一环节中的信息,后置增量和递减运算符占据首位。这个链接上写着“举个例子: foo=*P++; 这里,p作为表达式的一个副作用而递增,但是foo的值是*(p++)而不是(*p)++,因为一元运算符是从右到左绑定的“。 但在这样做之后,几乎没有发生任何信息在这些链接中提到。 在上面的实验中,只有在语句结束符之后才能看到post增量的效果。但是,如果对赋值运算符的右操作数执行post增量,则即使在