亲宝软件园·资讯

展开

【视频+图文新手也友好】Java ++i(前自增)和i++(后自增)用法详解

小乔的编程内容分享站 人气:0
> 明明书上写的++i(前自增)和i++(后自增)作用是不一样的。 > > 但是在我眼中看来它们的作用却好像一样?? > > 这个难题怎么破?快来观看这期【图文+视频】吧。 > > 让你快速掌握++i(前自增)和i++(后自增)。 [TOC] ## 视频讲解: [点击此处即可到B站观看](https://www.bilibili.com/video/av95281480) ## 知识点讲解: - **++i前自增:** 1. 在**使用i**之**前**,使**i**的值**加1**, 2. 因此**执行完++i**后,**整个表达式**和**i**的值**均为i+1** - **i++后自增:** 1. 在**使用i**之**后**,使**i**的值**加1**, 2. 因此**执行完i++**后,**整个表达式**的值为**i** 3. 而**i的值**变为**i+1** - **||:逻辑或:** 1. 只要**有一个**条件结果为**true即为true** 2. **所有**条件结果**均为false才为false** ## 例题1分析:(i与j均为后自增) ```java package com.task03; public class P044_ { public static void main(String[] args) { int i = 0, j = 1; if ((i++ == 1) || (j ++== 2)) {//此时i++==0 j++==1 j = 42; } System.out.println("i=" + i + ",j=" + j);//i=1,j=2 } } ``` 1.初始化 i=0 j=1 > 由于后自增是使用i之后,使i的值加1 > > 执行i++后,整个表达式的值为i,而i的值变为i+1 2.所以执行i++后,整个表达式的值为i即为0 不满足i++ == 1的条件 ​ 同理执行j++后,整个表达式的值为j即为1 不满足j++ == 2的条件 3.因此不能执行 j=42; 4.因为执行i++后,i的值变为i+1,j的值变为j+1 ​ 所以在执行输出语句后 i=1,j=2 ## 例题1图片:(i与j均为后自增) ![在这里插入图片描述](https://user-gold-cdn.xitu.io/2020/3/12/170cf64850d5fff3?w=1525&h=609&f=png&s=141397) ## 例题2分析:(i为后自增,j为前自增) ```java package com.task03; public class P044_ { public static void main(String[] args) { int i = 0, j = 1; if ((i++ == 1) || (++j == 2)) {//此时i++==0 ++j==2 j = 42; } System.out.println("i=" + i + ",j=" + j);//i=1,j=42 } } ``` 1.初始化 i=0 j=1 > 由于前自增:在**使用j**之**前**,使**j**的值**加1**, > > 因此**执行完++j**后,**整个表达式**和**j**的值**均为i+1** 2.所以执行i++后,整个表达式的值为i即为0 不满足i++ == 1的条件 ​ 而执行++j后,整个表达式的值为j+1即为2 满足++j == 2的条件 3.执行 j=42; 4.因为执行i++后,i的值变为i+1,j变为42 ​ 所以在执行输出语句后 i=1,j=42 ## 例题2图片:(i为后自增,j为前自增) ![在这里插入图片描述](https://user-gold-cdn.xitu.io/2020/3/12/170cf64850e39079?w=1532&h=602&f=png&s=144457) **前自减(--i)和后自减(i--)也是一样的,大家可以用这里的例子代码,自己消化理解一下。这样效果会更好,记忆会更加深刻!期待你们在评论区交作业喔~** **推荐你看:** - **双重for循环【视频+图文】讲解传输门:**[点击这里即可查看](https://www.cnblogs.com/Qpgshare/p/12356250.html) - **带continue语句的双重for循环【视频+图文】讲解传输门:**[点击这里即可查看](https://www.cnblogs.com/Qpgshare/p/12393860.html) - **带break语句的双重for循环【视频+图文】讲解传输门:**[点击这里即可查看](https://www.cnblogs.com/Qpgshare/p/12401494.html) - **【你需要的各种数据类型转换,这里都有~】传输门:**[点击这里即可查看](https://www.cnblogs.com/Qpgshare/p/12327838.html) - [新手友好型Eclipse快捷键大全(解密为什么他们的代码写的又快又好~)](https://www.cnblogs.com/Qpgshare/p/12307442.html) - [【视频+图文】新手友好型Java return语句用法](https://www.cnblogs.com/Qpgshare/p/12450546.html) **如果你觉得这篇文章还不错,麻烦帮我点个赞鸭!可以让更多人看到这篇文章。让我有动力继续更技术文~** ![在这里插入图片描述](https://user-gold-cdn.xitu.io/2020/3/12/170cf64855b46c57?w=1004&h=591&f=png&s=191882)

加载全部内容

相关教程
猜你喜欢
用户评论