【精致Java教程】11:常量、变量与运算符(二)

Java有以下这些运算符


【精致Java教程】11:常量、变量与运算符(二)_第1张图片

赋值运算符###

将“=”号右边的值赋给左边的变量。
例如:
int i = 5

算数运算符###

最基本的加、减、乘、除、取余(模)。看个例子就能明白了。
示例代码:

System.out.println("5 + 2 = " + (5 + 2)); // 加
System.out.println("5 - 2 = " + (5 - 2)); // 减
System.out.println("5 * 2 = " + (5 + 2)); // 乘
System.out.println("5 / 2 = " + (5 / 2)); // 除
System.out.println("5 % 2 = " + (5 % 2)); // 取余(模)

输出结果为:


5 + 2 = 7
5 - 2 = 3
5 * 2 = 7
5 / 2 = 2
5 % 2 = 1

这个例子有两个东西要讲:

  • “+”在可以作为字符串的连接符使用,像例子中"5 + 2 = "和(5 + 2)的运算结果被连接成一个字符串。
  • 小括号和数学式子一样起优先级作用,像例子中先计算(5 + 2)的结果才和"5 + 2 = "连接起来。

二元算数运算符###

这是运算符起简写作用,例如a = a + 1可以简写为a += 1
示例代码:

int a = 10, b = 1;
System.out.println(a += 1); // 与a = a + 1等效
System.out.println(a /= b + 2); // 与a = a / (b + 2)等效,而不是a = a / b + 2;
System.out.println("a = " + a);

输出结果为:


a = 11
3
a = 3

这个例子有3个东西要讲:

  • 同类型变量可以同时声明多个
    例如:

    int a = 10, b = 1;



    int a = 10;
    int b = 1;

    是一样的。

  • 输出语句System.out.println的“()”里的计算结果是起作用的。
    例如

    System.out.println(a += 1);



    a += 1;
    System.out.println(a);

    是一样的,都改变了a的值。

  • 二元运算符的右边是一个整体优先级最高,例如a /= b + 2a = a / (b + 2)等效,而不是a = a / b + 2等效,因为运算符右边的b + 2是一个整体。

自增、自减运算符###

程序中经常需要简单的把某个数值变量增加或者减少1,i++和i--就是变量i进行自增1或者自减1。自增、自减运算符有两种形式,就是运算符作为前缀或者后缀,例如i++++i。这两种写法是有区别的,看下面的代码就知道。
示例代码:

int a = 1, b = 1, c, d;
c = a++; // 先把a的值赋值给c,a再自增1
d = ++b; // 先把b自增1,再把b的值赋值给d
        
System.out.println("a = " + a);
System.out.println("b = " + b);
System.out.println("c = " + c);
System.out.println("d = " + d);

运行结果是:


a = 2
b = 2
c = 1
d = 2

从运行结果可以看出,两种形式都会对变量i进行自增1运算。只是运算符作为前缀先进行+1运算,作为后缀则先使用原来的值。

这篇文章讲了最基本的运算符(下图绿色部分),剩下的运算符下篇文章继续。


【精致Java教程】11:常量、变量与运算符(二)_第2张图片

本文代码下载:百度网盘

你可能感兴趣的:(【精致Java教程】11:常量、变量与运算符(二))