2.2.1、赋值、算术和一元操作符

这篇Java教程基于JDK1.8。教程中的示例和实践不会使用未来发行版中的优化建议。
赋值、算术和一元操作符
最简单的赋值操作符

最常见的操作符就是赋值操作符。它将等式右边的值赋值给等式左边的变量。

 int cadence = 0;
 int speed = 0;
 int gear = 1;

该操作符也可以把对象赋值给对象引用。

算术运算符

Java编程语言提供了加、减、乘、除运算符。这些运算符在基础数学中你已经学过。唯一感到陌生的是“%”这个操作符,它将一个操作数除以另一个操作数,并返回其结果的余数。

操作符描述
+加法操作符(也可以用在字符串拼接)
-减法操作符
*乘法操作符
/除法操作符
%余数操作符

下面的示例代码演示了算术操作符的使用

public class ArithmeticDemo {

    public static void main(String[] args){
        int result = 1+2;
        System.out.println("1 + 2 = " + result);

        int original_result = result;

        result = result - 1;
        System.out.println(original_result +" - 1 = " + result);
        original_result = result;

        result = result * 2;
        System.out.println(original_result +" * 2 = " + result );
        original_result = result;

        result = result / 2;
        System.out.println(original_result +" / 2 = " +result);
        original_result = result;

        result = result + 8;
        System.out.println(original_result +" + 8 = " +result);
        original_result = result;

        result = result % 7;
        System.out.println(original_result +" % 7 = " +result);
    }

}

程序输出:

1 + 2 = 3
3 - 1 = 2
2 * 2 = 4
4 / 2 = 2
2 + 8 = 10
10 % 7 = 3

你可以通过对简单操作符进行组合来创建组合操作符,比如:x+=1和x=x+1,都是对x加1。

“+” 操作符也可以用来拼接字符串,如下文所示:

public class ConcatDemo {
    public static void main(String[] args){
        String firstString = "This is ";
        String secondString = "a concatenated string.";
        String thirdString = firstString+secondString;
        System.out.println(thirdString);
    }
}

在程序结尾,变量thirdString存储在“This is a concatenated string.”,并打印到标准输出。

一元操作符

一元操作符只需要一个操作数,它完成如下这些操作:自增、自减、否定表达式、boolean值取反等等。

操作符说明
+加号操作符,表示正数
-减号操作符,表示负数
++自增操作符,操作数+1
自减操作符,操作数-1
!取反操作符,逻辑操作数取反

如下示例演示了一元操作符的操作:

public class UnaryDemo {
    public static void main(String[] args){
        int result = +1;
        System.out.println(result);

        result--;
        System.out.println(result);

        result++;
        System.out.println(result);

        result = -result;
        System.out.println(result);

        boolean success = false;
        System.out.println(success);

        System.out.println(!success);

    }
}

自增/自减操作符可以位于操作数的前面或者后面。不管是result++,还是++result,对于result变量来说都会自增1。唯一不同的是对于前缀(++result)来说表达式返回的是自增后的结果,后缀(result++)来说表达式返回的是自增前的结果。如果你仅仅只是想完成result变量的自增,不用太在乎到底是前缀++还是后缀++。但是当你在一个大表达式里面使用这个操作符,选择前缀还是后缀++操作符的结果就会有很大的不同。

下面的代码示例,演示了前缀和后缀一元操作符:

public class PrePostDemo {

    public static void main(String[] args){
        int i = 3;
        i++;
        // 打印4
        System.out.println(i);

        ++i;
        // 打印5
        System.out.println(i);

        //打印6
        System.out.println(++i);

        //打印6
        System.out.println(i++);

        //打印7
        System.out.println(i);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值