A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 赵新培 中级黑马   /  2015-12-14 22:53  /  903 人查看  /  16 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

如题,直接System.out.println(++a)与System.out.println(a++)

16 个回复

倒序浏览
给你举个例子:你去嫖娼,你嫖了没给钱就走,就是a++;你先给钱后嫖再走就是++a.
回复 使用道具 举报
回复 使用道具 举报
(++a)打印出来的是(a+1)的值,而(a++)打印出来的是(a)的值
回复 使用道具 举报
一个是先++再输出, 一个是先输出再++
回复 使用道具 举报
输出结构结果是不一样的,输出结果后a的值+1
回复 使用道具 举报
星晴。 来自手机 中级黑马 2015-12-15 00:17:44
7#
有些知识点没必要去纠结为什么,记住结果就好,就像1+1为什么等于2
回复 使用道具 举报
class Test1 {
        public static void main(String[] args) {
                int a = 3;
                System.out.println(a++);
                System.out.println(++a);

        }
}
输出值为:3,5。第一个输出a++,此行值不变,下一行+1,变为4,++a就不用多说了。
回复 使用道具 举报
因为写的不一样
回复 使用道具 举报
结果是一样的 但是参与到算式上 就不一样了
回复 使用道具 举报
一楼话糙理不糙,哎
回复 使用道具 举报
Zrz_K 中级黑马 2015-12-15 21:05:24
12#
a++符号后置的底层原理:
操作时候先提取a的值,后拷贝一个副本,再将a值自增1,并且将副本值返回。
        例:int a = 10;
               a = a++;
               此时a的值仍为10。(先自增后被副本的返回值赋值)
回复 使用道具 举报
++a是先自增1后再打印,,a++是先打印了后在自增
回复 使用道具 举报
++在前先产生副作用,然后才取变量值,++在后则是先取变量值,然后才产生副作用。
回复 使用道具 举报
谢了,已经知道了
回复 使用道具 举报
++a  是先进行a+1 运算在进行赋值
a++ 先进行赋值 完了才进行a+1 运算
回复 使用道具 举报
就是先付费和后付费的问题,++a就是先付费,a++就是先用着在考虑付不付费的问题。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马