1、算术运算符
自增和自减运算
2、赋值运算符
3、比较运算符
4.三元运算符
class TernaryOperatorDemo
{
public static void main(String[] args)
{
//需求:给定一个小数,需要求出其四舍五入之后的结果,如何完成该功能
/*
假设该小数为3.49
1、获取3.49的整数部分--3
2、获取3.49的小数部分--3.49-3-->0.49
3、把0.49和0.5作比较
0.49>=0.5-->3+1
0.49<0.5-->3
三元运算符;三目运算符
数据类型 Boolean表达式 ?值1:值2
如果:Boolean表达式结果为true,三元运算表达式结果为值1;
Boolean表达式结果为false,三元运算表达式结果为值2;
*/
double num = 3.49;
int num1 = (int)num;//整数部分
double num2 = num-num1;//小数部分
int result = num2 >= 0.5 ? num1 + 1: num1;
System.out.println(result);
}
}
//判断一个数的奇偶性
/*
判断一个数的奇偶性,只需要判断该数除以2余数是否为0即可
*/
int number = 10;
String ret = number % 2 == 0 ? "偶数" :"奇数";//数据类型 Boolean类型表达式 ?值1 :值2;
System.out.println(ret);
5、三元运算符在分页逻辑中的使用
class PageDemo
{
public static void main(String[] args)
{
/*
需求:给出一共47条数据,每一页只能有10条数据
计算:一共有多少页
*/
int totalCount = 47;
int pageSize = 10;
int totalPage = totalCount % pageSize == 0 ? totalCount / pageSize : totalCount / pageSize +1;
System.out.println(totalPage);
}
}
6、逻辑运算符
//逻辑运算符
class LogicalOperatorDemo
{
public static void main(String[] args)
{
/*
与:
&:位与
&&:短路与
&和&&的区别
&:如果A表达式为false,也会判断B表达式,再返回false
&&:如果A表达式为false,不再判断B表达式,直接返回false
效率:短路与效率高
或:
|:即使A表达式为true,也会执行B表达式,无论B表达式结果如何,都返回true。
||:短路或,只要A表达式为true,立即返回true,不再执行B表达式
短路或效率更高
*/
//位与
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);
System.out.println("=====================");
}
}
8、位运算符
//位运算符操作
class BitOperatorDemo
{
public static void main(String[] args)
{
/*
3的二进制:0000_0011
5的二进制:0000_0101
3 & 5:0000_0001;
3 |5 :0000_0111;
3 ^ 5:0000_0110;
*/
System.out.println(3 & 5);//1
System.out.println(3 | 5);//7
System.out.println(3 ^ 5);//6
}
}