Java自增和自减运算符(++和--)
运算符 | 含义 | 实例 | 结果 |
|---|---|---|---|
i++ | 将 i 的值先使用再加 1 赋值给 i 变量本身 | int i=1; int j=i++; | i=2 j=1 |
++i | 将 i 的值先加 1 赋值给变量 i 本身后再使用 | int i=1; int j=++i; | i=2 j=2 |
i-- | 将 i 的值先使用再减 1 赋值给变量 i 本身 | int i=1; int j=i--; | i=0 j=1 |
--i | 将 i 的值先减 1 后赋值给变量 i 本身再使用 | int i=1; int j=--i; | i=0 j=0 |
在使用自增/自减运算时应注意下面几个问题。
自增/自减只能作用于变量,不允许对常量、表达式或其他类型的变量进行操作。常见的错误是试图将自增或自减运算符用于非简单变量表达式中。
自增/自减运算可以用于整数类型 byte、short、int、long,浮点类型 float、double,以及字符串类型 char。
在 Java 1.5 以上版本中,自增/自减运算可以用于基本类型对应的包装器类 Byte、Short、Integer、Long、Float、Double 和 Character。
自增/自减运算结果的类型与被运算的变量类型相同。
例 1
编写一个程序,使用不同类型的数据结自增和自减运算符进行运算,并输出变量的值。实现代码如下:
public static void main(String[] args) {
int x = 5, y; // 声明用于自增和自减的整型变量
char cx = 'B', cy; // 声明用于自增和自减的字符型变量
float fx = 5.5f, fy; // 声明用于自增和自减的浮点型变量
System.out.println("---------对整数的自增和自减---------");
y = x++;
System.out.printf("y=x++ 的结果为:%d ,%d \n", x, y);
y = x--;
System.out.printf("y=x-- 的结果为:%d ,%d \n", x, y);
y = ++x;
System.out.printf("y=++x 的结果为:%d ,%d \n", x, y);
y = --x;
System.out.printf("y=--x 的结果为:%d ,%d \n", x, y);
System.out.println("\n---------对浮点的自增和自减---------");
fy = fx++;
System.out.printf("fy=fx++ 的结果为:%f ,%f \n", fx, fy);
fy = fx--;
System.out.printf("fy=fx-- 的结果为:%f ,%f \n", fx, fy);
fy = ++fx;
System.out.printf("fy=++fx 的结果为:%f ,%f \n", fx, fy);
fy = --fx;
System.out.printf("fy=--fx 的结果为:%f ,%f \n", fx, fy);
System.out.println("\n---------对字符的自增和自减---------");
cy = cx++;
System.out.printf("cy=cx++ 的结果为:%c ,%c \n", cx, cy);
cy = cx--;
System.out.printf("cy=cx-- 的结果为:%c ,%c \n", cx, cy);
cy = ++cx;
System.out.printf("cy=++cx 的结果为:%c ,%c \n", cx, cy);
cy = --cx;
System.out.printf("cy=--cx 的结果为:%c ,%c \n", cx, cy);
}
保存代码并运行,输出的结果如下:
---------对整数的自增和自减---------
y=x++ 的结果为:6 ,5
y=x-- 的结果为:5 ,6
y=++x 的结果为:6 ,6
y=--x 的结果为:5 ,5
---------对浮点的自增和自减---------
fy=fx++ 的结果为:6.500000 ,5.500000
fy=fx-- 的结果为:5.500000 ,6.500000
fy=++fx 的结果为:6.500000 ,6.500000
fy=--fx 的结果为:5.500000 ,5.500000
---------对字符的自增和自减---------
cy=cx++ 的结果为:C ,B
cy=cx-- 的结果为:B ,C
cy=++cx 的结果为:C ,C
cy=--cx 的结果为:B ,B
从运行结果来看,无论是何种类型,只要是自增和自减运算符支持的类型,都可以参与运算。
- 随机文章
- 核心危机(核心危机魔石合成攻略)
- 风儿(风儿轻轻的吹)
- 饿了么红包怎么用(饿了么红包怎么用微信支付)
- 儿童教育文章(儿童教育)
- 广州4a广告公司(广州4a广告公司创意总监年薪)
- 抖音卡(抖音卡顿怎么解决)
- xboxones(xboxone手柄怎么配对主机)
- 兵马俑(兵马俑介绍和历史背景)
- 陈武简历
- 帆船比赛(帆船比赛视频)
- 海猫鸣泣之时游戏(海猫鸣泣之时游戏在哪玩)
- 韩国媳妇和小雪(韩国媳妇和小雪的父亲工资是多少)
- 儋州市第二中学(儋州市第二中学录取分数线)
- 鬼泣5攻略(鬼泣5攻略第三关怎么跳)
- 地球日主题(2020年世界地球日主题)
- yy魔兽(yy魔兽世界)
- 充值卡代理(充值卡代理加盟)
- 拆奶罩
- 郭妮小说(恶魔的法则郭妮小说)
- 东天目山(东天目山景区)
- 蝙蝠给人类的一封信(蝙蝠给人类的一封信)
- 大松电饭煲(美的大松电饭煲)
- 疯狂填字(疯狂填字5)
- 点对点短信息(点对点短信息费是什么意思)
- 观音普门品(观音普门品念诵全文)
- 河北省大运会(河北省大运会时间)
- 哈利波特官网(哈利波特官网在哪里)
- 骇客神条(骇客神条怎么辨别真假)
- 杜星霖(杜星霖图片)
- 查传倜(查传倜个人生活)
