黑马程序员技术交流社区
标题:
a++和++a
[打印本页]
作者:
vipzh
时间:
2012-12-3 09:49
标题:
a++和++a
a++和++a有什么区别啊,可以举例说明吗?
作者:
洪灿阳
时间:
2012-12-3 10:13
package cn.itcast.Test;
public class AddTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
/*a++的意思是先进行处理后,再赋值给a;
++a的意思是先赋值再进行其他处理程序;*/
int x;
int y;
int a=0;
x=a++;//先传值给x,然后再自己加上去。所以x=0,a=1;
y=++a;//通过上面的步骤,a=1;这时候又自己先加上去1,所以a=2,然后传值给y,y=2
System.out.println("x="+x);
System.out.println("y="+y);
}
}
复制代码
作者:
齐银春
时间:
2012-12-3 10:21
int a=3; b=1;
b=++a; 首先是a=a+1,a=4; 左边 b=4; 最后结果是a=4,b=4;
b=a++; 右边是:因为a在前,++在后,a要参与++以外的运算,即先是b=a=3,a再++ ,b=3 最后结果是b=3,a=4;
1.先将a变量中的数据,进行临时存储,
2.自增运算,
a=a+1;
a=4;
3.将临时存储的a数据的变量赋值给b
b=temp;
b=3;
作者:
杨立
时间:
2012-12-3 10:21
这是递增操作符的两种形式,前缀和后缀。i++是先用i原来的值,然后使i增1。
++i是先使i先增1。然后使用i的值。
int i = 4;
int j = 4;
System.out.println("i++ is:" + i++);//运行结果是 i++ is:4
System.out.println("j++ is:" + ++j);//运行结果是 j++ is:5
作者:
冯盼
时间:
2012-12-3 10:32
b=a++;//先将a的值赋给b,a再自加1。
b=++a;//先将a的值自加1,再将新的a值赋给b。
例如:
a = 1;
b=a++;执行完b=1,a=2;
b=++a;执行完b=2,a=2;
作者:
马海保
时间:
2012-12-3 10:50
增1减1操作符
1> 增1减1操作符包括
++(前增1,如++i)
--(前减1,如--i)
++(后增1,如i++)
--(后减1,如i--)
这些操作符作用于变量
2> 前增1,前减1操作符
表达式的值就是变量所获得的新值
例如:
m = ++k;
就相当于
k += 1;
m=k;
先增1(减1),后取值
3> 后增1,后减1操作符
表达式的值就是变量原来的旧值
例如:
m = k--;
就相当于
m=k;
k - = 1;
先取值,后增1(减1)
作者:
初艳春
时间:
2012-12-3 11:56
class Print{
public static void main(String[] args){
int a = 5 ;
System.out.println(a++); //a++是后加,先输出,后加1(a的值变成6),所以打印结果是5。
System.out.println(++a); //++a是先加,然后输出,所以打印结果是7。
System.out.println(a--); //--a是后减,也是先输出,然后减1(a的值变为6),所以打印结果是7。
System.out.println(--a);//--a是先减,所以a先减1,在输出,所以打印结果是5。
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2