运算符
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
算术运算符
赋值运算符
比较运算符(关系运算符)
逻辑运算符
位运算符(这个几乎不使用,我们在讲解的时候了解一下即可,只不过有时候我们看底层代码的时候,大概知道这个位运算符是什么意思即可)
三元运算符
运算符:算术运算符
代码实现
代码实现
模运算
测试自增自减
//4.测试自增自减运算符
/** 前缀式:符号在前:++a --a ,先改变变量本身的值,再使用,比如打印
* 后缀式:符号在后: a++ a--,先使用,再改变变量本身的值
* ++:相当于给变量本身的值+1
* --: 相当于给变量本身的值-1*/
System.out.println("我是一个无情的分界线");
/**普通的四则运算并不会改变变量本身的值
* 自增自减运算符才会改变变量本身的值*/
int z = 1;
System.out.println(z+4);//5
System.out.println(z);//1
int a = 1;
System.out.println(++a);//2
System.out.println(a);//2
int b = 1;
System.out.println(b++);//1
System.out.println(b);//2
int c = 1;
System.out.println(--c);//0,符号在前,先自减,再打印
System.out.println(c);//0,上面已经自减过了
int d = 1;
System.out.println(d--);//1,符号在后,先打印,再自减
System.out.println(d);//0,打印过后,自减成0
//之前的代码会对后面的代码产生影响,c的值是0
System.out.println(c);//0
System.out.println(--c-c-c--);//1,-1-(-1)-(-1)=1
System.out.println(c);//-2,经历了两次自减,所以0-2=-2
}
}
运算符:比较运算符
比较运算符的结果都是boolean型,也就是要么是true,要么是false。
逻辑运算符
1.4 练习:测试逻辑运算符
创建包: cn.tedu.basic
创建类: TestOperator2.java
package cn.tedu.basic;
/**本类用于测试逻辑运算符*/
public class TestOperator2 {
public static void main(String[] args) {
/**与:全真才真*/
System.out.println("测试单与:");
System.out.println(true & true);
System.out.println(true & false);
System.out.println(false & true);
System.out.println(false & false);
System.out.println("测试双与:");
System.out.println(true && true);
System.out.println(true && false);
System.out.println(false && true);
System.out.println(false && false);
/**或:全假才假*/
System.out.println("测试单或:");
System.out.println(true | true);
System.out.println(true | false);
System.out.println(false | true);
System.out.println(false | false);
System.out.println("测试双或:");
System.out.println(true || true);
System.out.println(true || false);
System.out.println(false || true);
System.out.println(false || false);
}
}
位运算符(了解即可)
位运算是直接对整数的二进制进行的运算
下面是21的位运算符
计算结果:从右往左计算: 1 x 2^0 +
0 x 2^1+
1 x 2^2 +
0 x 2^3 +
0 x 2^4 = 21
下面第二个是右移两位,右移空出来的两位都是用0补
右移两位计算结果
0 x 2^0 +
0 x 2^1+
1 x 2^2 +
0 x 2^3 +
1 x 2^4 +
0 x 2^5 +
1 x 2^6 =21x2x2=84
通过代码实现