二, Java 数据符号关系篇 (运算符)
二, Java 数据关系篇
前面以及讲了 Java 中的数据类型, 接下来会讲在 Java 中, 数据与数据是怎样产生关系以及的
知识点都是琐碎的, 运算符再难也只是表示多个数据之间关系.
1 . 算术运算符
什么是算术运算符?
算术运算符就是用来对程序中得变量进行计算的, 用的也是最多的运算符运算范例结果+正号+77
-负号b=11;-b-11
+加号9+918
-减号10-82
*乘号7*749
/除号8/81
%取模11%92
++自增 (前): 先运算再取值a=2;b=++aa=3;b=3
++自增 (后): 先取值后运算a=2;b=a++a=3;b=2
--自减 (前): 先运算后取值a=2;b=--aa=1;b=1
--自减 (后): 先取值后运算a=2;b=a--a=1;b=2
+字符串相加"a" + "b""ab"
有何作用?
有了这些符号, 计算机才知道如何该去做些数据的处理
代码演示?
作为非科班生得我在自学到运算符这章节的时候, 其实对于取模还是比较陌生的, 后来再实际工作中慢慢也知道了取模的作用.
本质上取模 可以套用一个公式 a % b = a - a / b * b// 这里主要看下 取模和除法
inta=11;
11%9=2;
// 套用公式 11 - 11 / 9 * 9 = 11 -1 * 9 = 2
inta=10;
intb=10/4;// 这里在 Java 中 b 为 2
10.0/4=2.5// 这里在 Java 中 b 为 2
doublec=10/4// 这里为 2.0
// 以上知识点在数据类型, 两个不同类型进行计算总是会把类型转为大的.
// 整数类型 得到的值始终是整数类型, 小数类型存储的值总会是小数类型
2. 关系运算符
1. 关系运算符 结果是 true 或者 false. 对应生活中的 no 和 off
关系运算符作用?
主要搭配选择语句 if 或者循环语句中使用 (分支语句后面会讲
关系运算符有哪些?运算符运算范例结果==相当于8==7false
!=不等于8!=7true
>大于8>7true
<=小于等于8<=7false
>=大于等于8>=7true
instanceof检查是否是类的对象"hsp" instanceof Stringtrue
代码演示inta=9;
intb=10;
System.out.pritnln(a==b);
System.out.pritnln(a!=b);
System.out.pritnln(a>b);
System.out.pritnln(a
System.out.pritnln(a>=b);
System.out.pritnln(a<=b);
// 结果
false
true
false
true
flase
true
3. 逻辑运算符
逻辑运算符在 Java 体系中相较于之前的 算术运算符, 关系运算符 他是比较麻烦得一种表示系统, 他得应用也是为了处理生活中更加难以处理的场景, 使得 Java 生态更加强大.
主要处理 布尔类型的, 当有多种布尔类型的值时, 此时可以用逻辑运算符去处理布尔值最终返回一个布尔类型值.
当学习逻辑运算符部分, 不要想太多, 先把规则整明白, 等用到了自然就知道他得使用场景.
逻辑运算符规则
逻辑与 : 当 a && b 时, 如果 a 和 b 有一个满足 false, 则返回 false, 除非都为 true
逻辑或 : 当 a || b 时, 如果其中有一个为 true, 则返回 true, 如果都不是 true 则返回 false
取反: 当 a = true 时,!a 则是 false.
异或: 当 a^b 时, 如果 a 不等于 b 则返回 false 否则就是 true(开发时很少使用)
代码演示inta=true;
intb=false;
(a&&b)=false
(a||b)=true
inta=false;
intb=false;
(a&&b)=false
(a||b)=false
4. 赋值运算符
赋值是编程中的一个叫法, 一开始学的时候以为 = 就是相等的意思, 其实不然. 这里的赋值类型与在变量内存中赋一个数据
= 是赋值 == 是 是否相等
赋值得作用就是把一个变量内存指向得值. 附加另外一个值
代码演示inta=23;// 这里就是在内存空间中开辟了一段空间, 这个空间名字叫做 a, 里面的值就是 23
a=24;// 把 a 指向的内存空间里的 23 该为 24
5. 三元运算符
三元运算符: 条件表达式? 表达式 1: 表达式 2
当条件表达式 1 结果为 true, 则取表达式 1. 否则取表达式 2
三元运算符相对来说简化了代码量
代码演示inta=23;
intb=25;
intresult=0;
if(a>20){
result=a++;
}else{
result=b++;
}
// 以上代码可以用三元表达式
result=a>b?a++:b++;
// 最终结果为 25, 因为 a>b 等于 false 所以指向 b++, 此时 b++ 因为是自增 自增运算符在右边, 所以先赋值最后打印 result=25.
6. 运算符优先级
运算符优先级这块内容不用死记硬背, 到后边写东西多了自然就懂了.
以下优先级由高到低
() {}
++ --
算术运算符
位移运算符
比较运算符
逻辑运算符
三元运算符
赋值运算符
来源: http://www.bubuko.com/infodetail-3724526.html