(3)自增和自减运算符
- 自增(++)运算符
自增运算符“++”由 2 个“+”组成,作用是将变量值增加 1,在 JAVA 中,“++”的位
置不同表达的意思也不相同,需要分 2 种情况:
++x; //x 先自增 1,然后再参加运算
x++; //x 先参与运算,然后自增 1
public class Main {
public static void main(String[]
args) {
int a=1;
a++;
System.out.println(a);
} }
public class Main {
public static void main(String[]
args) {
int a=1;
++a;
System.out.println(a);
} }
- 自增运算表达式
将自增运算符、小括号、操作数连接起来、符合 JAVA 规则的式子被称为自增运算表达
式,参与运算的操作数只能是变量,不能是字面量、表达式等。
以下都是错误写法:
++100 //错误写法,不能是字面量
(a+1)++ //错误写法,不能是表达式
前面讲过,“++”的位置不同表达的意思也不相同,下面通过例子来深入了解一下:
public class Main {
public static void main(String[]
args) {
int a=1;
int b=0;
b=a++; //后++
System.out.println(a);
System.out.println(b);
} }
public class Main {
public static void main(String[]
args) {
int a=1;
int b=0;
b=++a; //前++
System.out.println(a);
System.out.println(b);
} }
我们知道,JAVA 程序中表达式都会返回一个结果值,自增运算表达式也是如此。如果
是“变量++”,返回变量自加之前的值;如果是“++变量”,返回变量自加之后的值。因此,
上述程序中,b=a++和 b=++a 执行过程等价于以下形式:
b=a++等价于 | b=++a 等价于 |
b=a; | |
a=a+1; | a=a+1; |
b=a; |
- 自减(–)运算符
自减运算符“–”由 2 个“-”组成,作用是将变量值减少 1。
也分为 i–、--i 的区别。和++类似。
没有 i**,i//
(4)比较运算符
关系运算符又称“比较运算符”用于执行程序中的比较运算。JAVA 中所有关系运算符
都是双目运算符,也就是说需要两个操作数参与运算,常用的关系运算符有以下 6 种:
< 小于
<= 小于或等于
>大于
>= 大于等于
== 等于
!= 不等于
关系表达式的运算结果是 boolean 类型,因此只有 2 这个可选值:true、false。
String 的相等比较不能用 ==,要用 equals。
public class Main {
public static void main(String[] args) {
int a=10;
int b=20;
int c=30;
System.out.println(1 > 2);
System.out.println( 5 >= 2);
System.out.println( a < 2);
System.out.println( a <= b);
System.out.println( a+b == c);
System.out.println(c != a+b);
}}
System.out.println(a==b);
System.out.println(a=b);
String s1="abc";
String s2 = "abc";
String s3="ab";
String s4="c";
String s5=s3+s4;
System.out.println(s1==s2);
System.out.println(s1==s5);
System.out.println(s1.equals(s2));
System.out.println(s1.equals(s5));
(5)逻辑运算符
JAVA 提供的逻辑运算符有以下 3 种:
&& 逻辑与(并且)
|| 逻辑或(或者)
! 逻辑非
逻辑与(&&)和逻辑或(||)都是双目运算符,需要两个操作数才能进行运算。逻辑非(!)是
单目运算符,只需一个操作数即可进行运算。
public class Main1
{
public static void main(String[] args)
{
int a=10;
int b=20;
int c=30;
boolean b1=true;
boolean b2=false;
boolean b3=b1||b2;
boolean b4=b1&&b2;
boolean b5=!b1;
boolean b6=(a>b)&&b1;
boolean b7=(a>b)||c>b;
boolean b8=!(a==b);
System.out.println(b3);
System.out.println(b4);
System.out.println(b5);
System.out.println(b6);
System.out.println(b7);
System.out.println(b8);
}
逻辑运算符还可以进行嵌套运算:
public class Main1{
public static void main(String[] args)
{
int a=10;
int b=20;
int c=30;
boolean b3=(a>b&&b>a)||a<6;
System.out.println(b3);
} }
- 逻辑表达式
将逻辑运算符、小括号、操作数连接起来、符合 JAVA 规则的式子被称为逻辑表达式,
参与运算的操作数可以是字面量、变量、表达式……等。例如:
a || b
1>2 && 3<4
!a