哈嘍,各位小伙伴們,你們好呀,我是喵手。運營社區:C站/掘金/騰訊云;歡迎大家常來逛逛
??今天我要給大家分享一些自己日常學習到的一些知識點,并以文字的形式跟大家一起交流,互相學習,一個人雖可以走的更快,但一群人可以走的更遠。
??我是一名后端開發愛好者,工作日常接觸到最多的就是Java語言啦,所以我都盡量抽業余時間把自己所學到所會的,通過文章的形式進行輸出,希望以這種方式幫助到更多的初學者或者想入門的小伙伴們,同時也能對自己的技術進行沉淀,加以復盤,查缺補漏。
小伙伴們在批閱的過程中,如果覺得文章不錯,歡迎點贊、收藏、關注哦。三連即是對作者我寫作道路上最好的鼓勵與支持!
前言
??Java作為一門面向對象的編程語言,其特點體現在復雜對象的抽象、繼承、多態、封裝等方面。而作為一個程序員需要
靈活運用Java語言的各種特性。本文將介紹Java語言中的三目運算符。
摘要
??本文將介紹Java語言中的三目運算符,包括其概念、語法、源代碼解析、應用場景案例、優缺點分析、類代碼方法介紹、測試用例(以main函數寫法為準)、全文小結、總結。
Java之三目運算符
簡介
??Java語言中的三目運算符是一種特殊的運算符,常用于Java程序的條件判斷部分。它的語法結構如下:
條件 ? 表達式1 : 表達式2
等價于下面的
(condition)?expr1:expr2
??其中,如果condition表達式的返回值為true,則返回expr1的值;否則,返回expr2的值。它是一個非常靈活、簡單易懂的運算符,經常被用在需要進行條件判斷的場合中,比如if語句、循環語句等。
源代碼解析
下面是三目運算符的源代碼解析:
public class ThreeOperatorsDemo {public static void main(String[] args) {int a, b;a = 10;b = (a == 1) ? 20: 30;System.out.println( "Value of b is : " + b );b = (a == 10) ? 20: 30;System.out.println( "Value of b is : " + b );}
}
??上述代碼定義了兩個整型變量a和b,在第一個三目運算符中,判斷a是否等于1,如果是,則將b的值賦為20,否則賦為30;在第二個三目運算符中,判斷a是否等于10,如果是,則將b的值賦為20,否則賦為30。最終輸出b的值,結果為:
Value of b is : 30
Value of b is : 20
具體執行結果如下:
應用場景案例
??三目運算符常用于Java程序的條件判斷部分,例如:
int max = (a > b) ? a : b;
??上述代碼中,如果a大于b,則將a的值賦給max,否則將b的值賦給max。
??例如再給大家演示一下其常用場景:
- 判斷輸入的數字是否為奇數或偶數
String result = (num % 2 == 0) ? "偶數" : "奇數";
拓展:
??這段代碼是一個三目運算符,用于判斷變量num是否為偶數,如果是,將字符串"偶數"賦值給變量result,否則將字符串"奇數"賦值給變量result。
??三目運算符的語法格式為:condition ? expr1 : expr2,其中condition是一個布爾表達式,如果為true,則返回expr1,否則返回expr2。在這段代碼中,condition為(num % 2 == 0),表示判斷變量num是否能夠被2整除,如果能夠被整除,則返回true,否則返回false。expr1為"偶數",expr2為"奇數"。
- 判斷兩個數字哪個更大
int max = (a > b) ? a : b;
拓展:
??這是一個三目運算符,格式為:(condition) ? value1 : value2,其作用是根據條件的真假來選擇value1或value2的值。
??在此代碼中,意思是如果a大于b,則將max的值設為a,否則將max的值設為b。等價于以下普通if語句:
int max;
if (a > b) {max = a;
} else {max = b;
}
- 判斷一個字符串是否為空
String str = "";
boolean isEmpty = (str == null || str.trim().isEmpty()) ? true : false;
拓展:
??這段代碼定義了一個字符串變量 str
,初始值為空字符串。接著,使用三目運算符判斷字符串是否為空,如果為空或只包含空格,則將布爾變量 isEmpty
賦值為 true
,否則將其賦值為 false
。
具體解釋如下:
str == null
部分判斷字符串是否為 null。str.trim().isEmpty()
部分判斷字符串去除空格后是否為空。
??如果上述兩個條件有一個滿足,則 isEmpty
變量被賦值為 true
,否則被賦值為 false
。
??該段代碼的作用是檢查字符串是否為空或只包含空格,并將結果返回給布爾變量 isEmpty
,方便后續的操作。
優缺點分析
優點
- 三目運算符簡單易懂,能夠有效提高程序的可讀性和簡潔性。
- 三目運算符可以避免代碼中大量的嵌套if語句,降低代碼的復雜度。
缺點
- 三目運算符只適用于簡單的條件判斷,對于較為復雜的判斷條件,使用三目運算符會使代碼更加難以理解。
- 三目運算符的使用需要慎重,過多的使用會降低代碼的可讀性和可維護性。
類代碼方法介紹
??以下是三目運算符的方法介紹:
方法名 | 方法描述 |
---|---|
?: | 三目運算符 |
??如下為使用三目運算符判斷兩個數中較大值的代碼實現:示例如下:
代碼演示
public class ThreeOperatorsDemo {public static void main(String[] args) {int a = 5;int b = 10;int max = (a > b) ? a : b;System.out.println("兩個數中較大的是:" + max);}
}
測試結果
??根據如上測試用例,本地測試結果如下,僅供參考,你們也可以自行修改測試用例或者添加更多的測試數據或測試方法,進行熟練學習以此加深理解。
代碼分析
??根據如上測試用例,在此我給大家進行深入詳細的解讀一下測試代碼,以便于更多的同學能夠理解并加深印象。
??如上用例代碼演示了Java中的三目運算符。在該代碼中,定義了兩個整型變量a和b,并使用三目運算符求出a和b中的較大值,將其賦值給變量max,最后輸出max的值。運行該代碼,輸出結果為"兩個數中較大的是:10"。
測試用例
以下是三目運算符的測試用例:
測試代碼演示
package com.example.javase.se.operators;/*** Java之三目運算符演示** @Author ms* @Date 2023-11-08 11:00*/
public class ThreeOperatorsDemo {public static void main(String[] args) {int a, b;a = 10;b = (a == 1) ? 20 : 30;System.out.println("Value of b is : " + b);b = (a == 10) ? 20 : 30;System.out.println("Value of b is : " + b);}
}
測試結果
??根據如上測試用例,本地測試結果如下,僅供參考,你們也可以自行修改測試用例或者添加更多的測試數據或測試方法,進行熟練學習以此加深理解。
測試代碼分析
??根據如上測試用例,在此我給大家進行深入詳細的解讀一下測試代碼,以便于更多的同學能夠理解并加深印象。
??這段代碼演示了 Java 的三目運算符。
??在代碼中,首先定義了兩個整型變量 a 和 b,并將 a 賦值為 10。然后使用三目運算符語法,將 (a == 1) 作為條件表達式,如果條件成立則將 b 賦值為 20,否則賦值為 30。此時因為 a 不等于 1,所以 b 的值將為 30,并輸出 “Value of b is : 30”。
??接著,將條件表達式改為 (a == 10),由于 a 等于 10,所以條件成立,將 b 賦值為 20,因此輸出 “Value of b is : 20”。
全文小結
??本文介紹了Java語言中的三目運算符的概念、語法、源代碼解析、應用場景案例、優缺點分析、類代碼方法介紹、測試用例。通過本文的介紹,相信大家已經對三目運算符有了更深入的了解。
總結
??三目運算符是Java語言中的一種特殊的運算符,常用于Java程序的條件判斷部分。它的優點是可以簡化代碼,提高代碼的可讀性,缺點是如果過多使用三目運算符,會導致代碼可讀性降低,不易維護。在實際的Java開發中,需要根據具體的情況選擇適合的條件判斷方式,靈活運用Java語言的各種特性。
… …
文末
好啦,以上就是我這期的全部內容,如果有任何疑問,歡迎下方留言哦,咱們下期見。
… …
學習不分先后,知識不分多少;事無巨細,當以虛心求教;三人行,必有我師焉!!!
wished for you successed !!!
??若喜歡我,就請關注我叭。
??若對您有用,就請點贊叭。
??若有疑問,就請評論留言告訴我叭。