Java基础--运算符
2023-06-13 09:16:42 时间
算术运算符
+- * /%
public class TestDemo1{
public static void main(String[] args){
System.out.println(5/2);
System.out.println((double)(5/2));
System.out.println(5.0/2);
System.out.println((double)5/2);
}
}
//运行结果是:
//2
//2.0(java的小数不会后面保留很多位)
//2.5
//2.5
public static void main(String[] args) {
int a = 10;
int b = 0;
System.out.println(a/b);
System.out.println("thank");
}
程序直接报错 (抛出),并且在除0的位置代码直接就结束了
Exception in thread "main" java.lang.ArithmeticException: / by zero at test.main(test.java:5) //算术异常 出现在第五行 所以除数绝对不能是0
注意啦 zhuyila
%表示取余数,或者取模
%既可以对int,也可以对小数进行运算
public class TestDemo1{
public static void main(String[] args){
System.out.println(10%3);
System.out.println(-10%3);
System.out.println(10%-3);
System.out.println(-10%-3);
System.out.println(11.5%2.0);
}
}
//运行结果为:
//1
//-1
//1
//-1
//1.5(取模数都输小数)
复合运算符
+= -= *= /= %=
自增运算符
++ --
public class TestDemo1{
public static void main(String[] args){
int a = 10;
int b = ++a;//b=11,a=11
System.out.println(b);
int c = a++;//c=11,a=12
System.out.println(c);
}
}
关系运算符
== != < > <= >= 关系运算符的运算结果只会是 true false (boolean类型)
public class TestDemo1{
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);
}
}
//false
//true
//true
//false
//true
//false
逻辑运算符
&& || !
逻辑运算符的运算结果也只会是 true false (boolean类型)
逻辑与&&
规则: 两个操作数都为 true, 结果为 true, 否则结果为 false.
逻辑或 ||
规则: 两个操作数都为 false, 结果为 false, 否则结果为 true
逻辑非 !(只能作用于boolean类型的数据上)
规则: 操作数为 true, 结果为 false; 操作数为 false, 结果为 true
&& 与 || 遵守短路求值原则
System.out.println(10 > 20 && 10 / 0 == 0); // 一旦左边为假,右边就不会被执行了,直接打印 false
System.out.println(10 < 20 || 10 / 0 == 0); // 一旦左边为真,右边就不会被执行了,直接打印 true
&按位与
|按位或
^按位异或
以上3个都是对二进制进行操作的
&:都是1才为1
|:有1就是1
^:异为1,同为0
~:按位取反
移位运算
、>>右移
在不考虑负数的情况下,右移相当于除法(左边补符号位)
左移<<相当于乘法
,>>>无符号右移(不管原本是正数还是负数,直接在左边补0就行了)
三目运算符
a?b:c
其实就是if else的简化版
相关文章
- java queue toarray_Java PriorityBlockingQueue toArray()用法及代码示例
- java取整和java四舍五入方法
- java helloworld源代码_Java Hello World源代码剖析
- Java 实现MD5加密「建议收藏」
- Java基础知识点笔记(一):java中的取整与四舍五入
- think in java一_Think in Java(一):Java基础「建议收藏」
- java启动器_JAVA基础:Java 启动器如何查找类
- java多线程面试题大全_java多线程面试题_线程并发面试题
- java 基础语法
- 大数据必学Java基础(六十二):ConcurrentMap并发容器对比
- java 自定义类加载器_JAVA中如何使用应用自定义类加载器「建议收藏」
- 牛掰!“基础-中级-高级”Java程序员面试集结,看完献出我的膝盖
- java读取输入字符串的操作过程_java查找字符串中重复字符
- 获取计算机用户名,java获取计算机用户名
- 大数据必学Java基础(八十):网络编程的深入了解
- java在线生成uuid_Java生成uuid
- Java基础--数据类型
- Mock数据 – Java最好用的工具JMockData
- java中printf的使用
- Oracle转Java实现跨平台开发的奇妙之旅(oracle转java)
- 时间解决Java操作Redis实现自动过期时间(redisjava过期)
- 策略Java和Redis结合: 实现高性能的缓存过期策略(redisjava过期)
- 逆向基础(十) JAVA (四)
- Java语法基础之函数的使用说明
- 用java生成html文件实现原理及代码
- Java基础之java处理ip的工具类