java基础 自增(++)、自减(--)一元运算符

作为才步入程序员的我来说这两个运算符极易出错,专门记录下。免得后面又忘记了。。。。。

先来了解下什么是一元运算符?

一元运算符只对一个表达式执行操作,该表达式可以是数值数据类型类别中的任何一种数据类型。自我理解--就是作用与一个表达式的运算符。

自增、自减怎么使用?

/**
 * 一元运算符测试
 */
public class OperatTest {
    public static void main(String[] args) {
        int a = 5;
        int b = a++; // 此时先赋值,再进行a++   a=6 b=5
        System.out.println("这里是第一次自增:a=" + a + ",b=" + b);
        int c = ++a; // 此时先计算a++,再进行赋值  a=7  c=7
        System.out.println("这里是第二次自增:a=" + a + ",c=" + c);

    }
}

这里要记住 ++在前面是先自增再赋值。++在后面先赋值再自增

/**
 * 一元运算符测试
 */
public class OperatTest {
    public static void main(String[] args) {
        int i = 5;
        int a = OperatTest.add(i);
        System.out.println("第一次调用方法:a=" + a);
        int b = OperatTest.addd(i);
        System.out.println("第二次调用方法:b=" + b);

    }

    /**
     * 先赋值,再自增
     *
     * @param a 参数
     * @return 返回结果
     */
    public static int add(int a) {
        return a++; // 先赋值再自增,先return,后再自增,已经return了,就不执行后面的语句了。 所以return 5;
    }

    /**
     * 先自增再赋值
     *
     * @param a 参数
     * @return 返回结果
     */
    public static int addd(int a) {
        return ++a; // 先自增再赋值,先自增再return;  所以 return 6;
    }
}

最后,来一个练习。

 public static void main(String[] args) {
        int a = 5;
        int b = a++ + ++a + ++a + a++ + --a + a-- + a--;
        System.out.println("b=" + b);
    }

答案再表下面哦!

附一张运算符优先级表:

优先级

运算符

结合性

1

() [] .

从左到右

2

! +(正)  -(负) ~ ++ --

从右向左

3

* / %

从左向右

4

+(加) -(减)

从左向右

5

<< >> >>>

从左向右

6

< <= > >= instanceof

从左向右

7

==   !=

从左向右

8

&(按位与)

从左向右

9

^

从左向右

10

|

从左向右

11

&&

从左向右

12

||

从左向右

13

?:

从右向左

14

= += -= *= /= %= &= |= ^=  ~=  <<= >>=   >>>=

从右向左

运行结果:

   练习纯属娱乐!涉及优先级问题。哈哈哈哈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值