Java运算符的知识点与代码汇总
作者:鲁大师啦啦啦 发布时间:2022-12-05 19:03:36
一:算术运算符
1.算术运算符有哪些
①基本四则运算符:+ - * / %
②增量赋值运算符:+= -= *= /= %=
③自增/自减运算符++ –
2.如何使用算术运算符
public class TestDemo {
public static void main(String[] args) {
int a=8;
int b=20;
System.out.println(a+b);// +
System.out.println(b-a);// -
System.out.println(a*b);// *
System.out.println(b/a);// /
double c=8.0;
double d=17.0;
System.out.println(d/c);// 2.125
}
}
public class TestDemo {
public static void main(String[] args) {
int a=20;
a+=10; //等价于a=a+10;
a-=10; //等价于a=a-10;
a*=10; //等价于a=a*10;
a/=2; //等价于a=a/10;
a%=2; //等价于a=a%10;
}
}
public class TestDemo {
public static void main(String[] args) {
int a=20;
a++;
++a;
int b=a++;
int c=++a;
System.out.println(a); //24
System.out.println(b); //22
System.out.println(c); //24
}
}
3.算术运算符的注意事项
加减乘都不用再说了,首先讲一下除法的两条注意事项;
a)int /int 结果还是int,需要使用double来计算,上面的代码已经展示过了
b)0不能作为除数,如果0作为除数进行运算会报错
接着讲一下取余的运算注意事项:
取余符号不仅仅可以对int求模,也能对double来求模;
double c=-8.0;
double d=17.0;
System.out.println(d%c);// 1.0
最后再说一下自增/自减运算符的两条注意事项;
a)如果不取自增运算的表达式的返回值, 则前置自增和后置自增没有区别.
b)如果取表达式的返回值, 则前置自增是先自增再赋值 后置自增的是先赋值再自增
二:关系运算符
1.关系运算符有哪些
关系运算符有六个:== != > < >= <=
2.如何使用关系运算符
public class TestDemo {
public static void main(String[] args) {
int a = 10;
int b = 20;
System.out.println(a == b);
System.out.println(a != b);
System.out.println(a < b);
System.out.println(a > b);
System.out.println(a <= b);
System.out.println(a >= b);
}
}
3.关系运算符的注意事项
关系运算符的表达式返回值都是boolean 类型
三:逻辑运算符(重点)
1.逻辑运算符有哪些
逻辑与 && 逻辑或 || 逻辑非 !
2.如何使用逻辑运算
public class TestDemo {
public static void main(String[] args) {
int a=10;
int b=20;
System.out.println(a>b && a<b);//false
System.out.println(a>b || a<b);//true
System.out.println(!(a>b));//true
}
}
3.逻辑运算符的注意事项
a)对于 && , 如果左侧表达式值为 false , 则表达式的整体的值一定是 false, 无需计算右侧表达式
b)对于 ||, 如果左侧表达式值为 true, 则表达式的整体的值一定是 true, 无需计算右侧表达式
四:位运算符
1.位运算符有哪些
Java中对数据的操作的最小单位不是字节,而是二进制位;
位运算符包括 按位与& 按位或| 按位取反~ 按位异或^
2.如何使用位运算符
按位与&:如果两个二进制位都是1,则结果为1,否则结果为0;
按位或|:如果两个二进制位都是0,则结果为0,否则结果为1;
按位取反~:如果该位为0则转为1,如果该位为1,则转为0;
按位异或^:如果两个数字的二进制位相同,则结果为0,相异则结果为1;
3.位运算符的注意事项
五:移位运算(了解)
1.移位运算符有哪些
移位运算符有三个:<< >> >>>
2.如何使用移位运算符
左移<<:最左侧位不要了,最右侧补0;
右移>>:最右侧位不要了,最左侧补符号位(正数补0,负数补1);
无符号右移>>>:最右侧位不要了,最左侧补0;
3.移位运算符的注意事项
a)左移1位,相当于原数字2,左移N位,相当于原数字2的N次方;
b)右移1位,相当于原数字/2,右移N位,相当于原数字/2的N次方;
c)由于计算机计算移位效率高于计算乘除, 当某个代码正好乘除 2 的N次方的时候可以用移位运算代替;
d)移动负数位或者移位位数过大都没有意义
六:条件运算符
1.条件预算福有哪些
条件运算符只有一个:表达式1?表达式2:表达式3;
2.如何使用条件运算符
public class TestDemo {
public static void main(String[] args) {
int a=10;
int b=20;
int max=a>b?a:b; //20
System.out.println(max);
}
}
3.条件运算符的注意事项
当 表达式1 的值为 true 时, 整个表达式的值为 表达式2 的值; 当 表达式1 的值为 false 时, 整个表达式的值为 表达式3 的值
七:运算符的优先级
运算符按照优先级别的高低排序分别是:自加/减运算符、 算术运算符、比较运算符、逻辑运算符、赋值运算符。具体请参考下表:
顺序 | 运算符 |
1. | 括号,如 ( ) 和 [ ] |
2. | 一元运算符,如 -、++、- -和 ! |
3. | 算术运算符,如 *、/、%、+ 和 - |
4. | 关系运算符,如 >、>=、<、<=、== 和 != |
5. | 逻辑运算符,如 &、^、|、&&、|| |
6. | 条件运算符和赋值运算符,如 ? :、=、*=、/=、+= 和 -= |
总结
来源:https://blog.csdn.net/qq_39537400/article/details/115453861
猜你喜欢
- 已知两个链表list1和list,2,各自非降序排列,将它们合并成另外一个链表list3,并且依然有序,要求保留所有节点。实现过程中,lis
- JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下。代码其实很简单:以前的
- 定义:用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。特点: 1、它支持以不同的方式遍历一个
- 本文实例讲述了Java删除二叉搜索树的任意元素的方法。分享给大家供大家参考,具体如下:一.删除思路分析在删除二叉搜索树的任意元素时,会有三种
- IO流Java中IO流分为两种,字节流和字符流,顾名思义字节流就是按照字节来读取和写入的,字符刘是按照字符来存取的;常用的文件读取用的就是字
- 这篇文章主要介绍了Java集合使用 Iterator 删除元素,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,
- 前言为了减少日志频繁打印带来的性能影响,线上环境设置的日志级别一般都相对较高。而当出现生产问题需要排查的时候,可能需要适当降低日志级别(例如
- 一、方法这里我们用两种方法来实现跑马灯效果,虽然实质上是一种实质就是:1、TextView调出跑马灯效果2、TextView获取焦点&nbs
- 配置不生效的解决办法注意:如果配置不生效,则说明spring优先加载了其他配置:解决办法:添加启动参数 -Dlogging.config=c
- 数组实现Java 自定义Queue队列及应用Java 自定义队列Queue:队列的抽象数据类型就是一个容器,其中的对象排成一个序列,我们只能
- 问题介绍:用二维数组表示一个迷宫,设置迷宫起点和终点,输出迷宫中的一条通路实现思路:二维数组表示迷宫:0表示路且未走过、1表示墙、2表示通路
- Spring对配置类的处理主要分为2个阶段配置类解析阶段会得到一批配置类的信息,和一些需要注册的beanbean注册阶段将配置类解析阶段得到
- 以前一直使用Hibernate,基本上没用过Mybatis,工作中需要做映射关系,简单的了解下Mybatis的映射。两者相差不多都支持一对一
- 一、前言近期一项目A需实现数据同步到另一项目B数据库中,在不改变B项目的情况下,只好选择项目A中切换数据源,直接把数据写入项目B的数据库中。
- 前言JDK 1.5 之前 synchronized 的性能是比较低的,但在 JDK 1.5 中,官方推出一个重量级功能 Lock,一举改变了
- 前言我们在很多博客中都有发现,Seata AT模式里面的全局锁其实是行锁,这也是Seata AT模式和XA模式在锁粒度上的最大区别。我们可以
- 生产者消费者模式的几种实现方式拿我们生活中的例子来说,工厂生产出来的产品总是要输出到外面使用的,这就是生产与消费的概念。在我们实际的软件开发
- 1.概述数据库开发一直是JAVA开发的核心之一,作为现在JAVA EE的基石框架,Spring Boot自身携带了一个JDBCTemplat
- 使用命令行的方式管理服务器镜像及容器是运维人员最常用的方式,但是有的时候我们不得不远程操作docker或者是面向对docker并不熟悉的技术
- 前言在框架中经常会会用到method.invoke()方法,用来执行某个的对象的目标方法。以前写代码用到反射时,总是获取先获取Method,