导航:首页 > 编程语言 > java中i和i

java中i和i

发布时间:2023-06-04 18:45:07

java 中 i++和++i有什么区别

i++

++i
都是表达式,都会有一个返回值。
不同的地方在于,i++返回的是加一之前的值,而++i是返回加1后的值。
int
i
=
1;
int
b
=
i++;
此时执行后i为2,b为1.
int
i=1;
int
b=++i;
执行后i为2,b为2.
传言++i比i++速度更快

⑵ Java里面i++和++i到底有什么区别

1、赋值顺序不同
++ i 是先加后赋值;i ++ 是先赋值后加;++i和i++都是分两步完成的。
因为++i 是后面一步才赋值的,所以它能够当作一个变量进行级联赋值,++i = a =b,即 ++i 是一个左值;i++ 的后面一步是自增,不是左值。
形象的理解可以是i++先做别的事,再自己加1,++i先自己加1,再做别的事情。
2、效率不同
比如i=3,b=i++就是说b=3,完成之后让i变成4,b=++i就是先让i++变成4,然后b=4,其中++i比i++效率要高些。一般来说在循环域里面,这两者并没有什么很大的区别,但是要注意其生存周期,以及i值在程序流中的变化。
3、 i++ 不能作为左值,而++i 可以。
左值是对应内存中有确定存储地址的对象的表达式的值,而右值是所有不是左值的表达式的值。一般来说,左值是可以放到赋值符号左边的变量。
但能否被赋值不是区分左值与右值的依据。比如,C++的const左值是不可赋值的;而作为临时对象的右值可能允许被赋值。左值与右值的根本区别在于是否允许取地址&运算符获得对应的内存地址。

⑶ Java 中 i-- 和 --i 的实际应用

你这两段代码执行结果没有任何区别,--i和i--的区别我写个例子你看一下估计就明白了:

inti=10,a,b;
System.out.println("i="+i);
a=i--;
System.out.println("执行a=i--;//i="+i+",a="+a);
b=--i;
System.out.println("执行b=--i;//i="+i+",b="+b);

结果如下:

i=10
执行a=i--;//i=9,a=10
执行b=--i;//i=8,b=8

⑷ java中++i和i++的区别

无论在java还是在其他语言中,++i和i++的用法都是一样的,主要差别体现在直接使用中:

++i是先对i进行自增操作然后再进行运算,如

inti=10;
System.out.println(++i);//这时输出结果为11

i++是先进行运算然后再进行自增操作,如

inti=10;
System.out.println(i++);//这时输出的结果还是为10

当然在不是直接进行运算的用法当中输出的结果是一样的,如:

inti=10;
i++;
System.out.println(i);//结果为11
i=10;
++i;
System.out.println(i);//结果为11

⑸ Java中的++ i和 i++ 的区别

java中的++ i和 i++ 和c语言中是一样的

首先你要明确以一点是不管是 ++i 还是 i++,最后结果对于i来说都是一样的,他的值都会加1。
eg:i=5;这两个动作完成后i的值都变成6。

其次 对于他赋值给的那个变量就不一样了。
eg:i=5;
a = ++i,这句执行完后a = 6,当然i=6;
但是
a = i++,这句执行完后a = 5,i=6;

看了上面的例子应该明白结果了吧。

理解的话对于a = ++i你可以理解先执行+,再赋值。而对于a = i++,是先执行赋值再+。

阅读全文

与java中i和i相关的资料

热点内容
结对程序员 浏览:762
使用过的苹果手机怎么同步app 浏览:344
phpcookie无效 浏览:954
python可以搜数学答案 浏览:706
均线衍生指标源码设置 浏览:496
做精一张图pdf 浏览:851
编程培训小朋友 浏览:787
巴克球制作解压 浏览:851
测量参数时接单片机的 浏览:116
手机音乐添加文件夹 浏览:546
百度智能云b18怎么删除app 浏览:968
单片机中为什么显示找不到头文件 浏览:151
iisweb服务器如何重启 浏览:838
微信没有适配方舟编译器 浏览:81
箍筋加密区梁的净高 浏览:889
samp如何加入外国服务器 浏览:895
保鲜膜解压教学视频 浏览:983
台达plc编程通讯管理软件 浏览:407
优优pdf 浏览:801
程序员职业穿搭 浏览:257