前言:
目前朋友们对“java短路与代码”都比较重视,兄弟们都需要分析一些“java短路与代码”的相关内容。那么小编在网络上网罗了一些关于“java短路与代码””的相关文章,希望姐妹们能喜欢,兄弟们一起来了解一下吧!“嗨 我是学长,今天的你过得还好吗?”
“这里是 offer 学院,帮你轻松拿offer”
- 2022.11.03 -
Java运算符:
学习运算符,我们需要清楚有几类运算符,划重点,要考的。Java运算符呢可分为以下⼏类:
算数运算符关系运算符逻辑运算符赋值运算符条件运算符字符连接运算符
一、算数运算符
我们先来看⼀下,算术运算符具体都包含哪些运算符,这⾥给⼤家整理了个表格。
算术运算符可应⽤于整数类型与Double类型数值的计算,但是Double类型使⽤算术运算符计算会丢失精度。
我们通过代码举例先来了解整数类型数据的运算:
public class CalculateExample { public static void main(String[] args) { int a = 10; int b = 3; //`+`运算符 System.out.println("求和 a + b = " + (a + b)); //`-`运算符 System.out.println("求差 a - b = " + (a - b)); //`*`运算符 System.out.println("求积 a × b = " + (a * b)); //`/`运算符 System.out.println("求商 a ÷ b = " + (a / b)); //`%`运算符 System.out.println("求余 a % b = " + (a % b)); //`++`运算符 System.out.println("a++ 之前:a = " + a); a++; System.out.println("a++ 之后:a = " + a); //`--`运算符 System.out.println("b-- 之前:b = " + b); b--; System.out.println("b-- 之后:b = " + b); }}
控制台输出结果:
再来看⼀下 Double 类型数据的运算。
public class CalculateExample { public static void main(String[] args) { Double double1 = 1.07; Double double2 = 1.0; System.out.println("double1 + double2 = " + (double1 + double2)); //`-`运算符 Double double3 = 1.2; Double double4 = 1.1; System.out.println("double3 - double4 = " + (double3 - double4)); //`*`运算符 Double double5 = 1.03; Double double6 = 1.05; System.out.println("double5 × double6 = " + (double5 * double6)); //`/`运算符 Double double7 = 150.0; Double double8 = 9.0; System.out.println("double7 ÷ double8 = " + (double7 / double8)); //`%`运算符 System.out.println("double5 % double6 = " + (double5 % double6)); //`++`运算符 double1++; double2++; System.out.println("double3++ = " + (double1)); System.out.println("double4++ = " + (double2)); //`--`运算符 double5--; double6--; System.out.println("double5-- = " + (double5)); System.out.println("double6-- = " + (double6)); }}
控制台输出结果:
值得注意的是 ++ 或 -- 运算符出现在变量之前时先计算,然后赋值。出现在变量之后时,先赋值然后做计算。
二、关系运算符
关系运算符的运算结果仅为布尔值,只有 true & false 。
三、逻辑运算符
短路与逻辑:
⼀、逻辑与和逻辑或:先运⾏左侧表达式,⽆论结果如何,右侧表达式都会运⾏。
⼆、短路与和短路或:
1. 短路与:先运⾏左侧表达式,如果为true,继续运⾏右侧表达式。如果左侧表达式结果为false,不 会运⾏右侧表达式,⽽是直接返回false结果。
2. 短路或:先运⾏左侧表达式,如果为false,继续运⾏右侧表达式。如果左侧表达式结果为true,不 会运⾏右侧表达式,⽽是直接返回true结果。
直接返回左侧运⾏结果⽽不再继续运⾏右侧表达式这叫做短路现象,下⾯有⼀段代码,⼤家可以拿来玩 ⼀玩。
public class CalculateExample { public static void main(String[] args) { System.out.println("第⼀次运⾏,参数:30,20,10"); logicCalculate(30, 20, 10); System.out.println("---------------------------"); System.out.println(""); System.out.println("第⼆次运⾏,参数:10,20,10"); logicCalculate(10, 20, 10); } public static void logicCalculate(Integer firstNum, Integer secondNum,Integer thirdNum) { if (firstNum > secondNum & secondNum > thirdNum) { System.out.println("& 运算为 true"); } if (firstNum > secondNum && secondNum > thirdNum) { System.out.println("&& 运算为 true"); } if (firstNum > secondNum | secondNum > thirdNum) { System.out.println("| 运算为 true"); } if (firstNum > secondNum || secondNum > thirdNum) { System.out.println("|| 运算为 true"); } }}
这段代码运⾏结果如下:
逻辑运算符两边都是布尔值,并且最终运算结果也只有 true & false 。
四、赋值运算符
除赋值运算符外,其余运算是在原本数值基础上计算后赋值。我们举个例⼦。
public class CalculateExample { public static void main(String[] args) { //计算⽤数值 int calculateNum = 1; //计数 int tagNum = 1; //这⾥我们循环5次,看看每次的计算结果 for (int i = 0; i < 5; i++) { System.out.println("本次calculateNum初始值 " + calculateNum); calculateNum += 2; System.out.println("calculateNum第 " + tagNum + " 次计算结果: "+ calculateNum); tagNum++; System.out.println("--------------------------------"); System.out.println(""); } }}
其运⾏结果为:
五、条件运算符
条件运算符(三⽬运算)
格式: Boolean Expression ? Expression1 : Expression2;
解释: Boolean Expression 为条件表达式,其结果为布尔值,运⾏表达式从 ? 符号后⾯的表达 式中选择,当其结果为 true 时,运⾏ : 符号之前的表达式,反之,则运⾏ : 符号之后的表达式。
举个例⼦验证⼀下:
public class CalculateExample { public static void main(String[] args) { System.out.println("第⼀次计算,参数 firstNum = 1,secondNum = 5"); conditionCalculate(1, 5); System.out.println("-----------------"); System.out.println("第⼆次计算,参数 firstNum = 8,secondNum = 5"); conditionCalculate(8, 5); System.out.println("-----------------"); } public static void conditionCalculate(Integer firstNum, Integer secondNum) { int result; String printString = firstNum > secondNum ? "firstNum - secondNum" : "secondNum - firstNum"; result = firstNum > secondNum ? firstNum - secondNum : secondNum -firstNum; System.out.println("firstNum > secondNum = " + (firstNum > secondNum)); System.out.println(printString + " = " + result); }}
运⾏结果如下:
六、字符连接运算符
Java中字符连接时⽤的连接符为 + ,是不是看着有些眼熟,算术运算符中也有这个运算符,我们来看 看,同样的运算符,什么时候求和,什么时候⼜拼接字符呢。
1. 求和:运算符两边的参数数据类型都是数字。2. 拼接字符:运算符任意⼀边是字符串。
运算符拼接字符串时,从左向右运⾏,有⼩括号优先运⾏⼩括号中的代码,运算符拼接字符最终结果是 字符串。
举个例⼦:
public class CalculateExample { public static void main(String[] args) { int a = 10; int b = 10; System.out.println("a + b = " + (a + b)); System.out.println("a + b = " + a + b); }}
运⾏结果:
okk~ 今天的变量和变量的对话桥梁,运算符相关的基础知识教学就到这里,希望同学们可以多多练习运用,如果遇到问题可以扫描最上方二维码进行咨询。
我们下期再见!
END
文案编辑 | offer学长
文案配图 | offer学长
原创内容 | 张老师原创
标签: #java短路与代码 #java关系运算符实例