【java】三元條件運算子中的多個條件? - 程式人生
文章推薦指數: 80 %
【java】三元條件運算子中的多個條件? 阿新• • 發佈:2020-11-20. 我正在學習Java程式設計的第一學期,我們已經介紹了條件運算子(?:)條件。
我有兩個問題,似乎是想讓 ...
程式人生>java>三元條件運算子中的多個條件?
【java】三元條件運算子中的多個條件?
阿新••發佈:2020-11-20
我正在學習Java程式設計的第一學期,我們已經介紹了條件運算子(?:)條件。
我有兩個問題,似乎是想讓我在彼此之間“巢狀”條件運算子,而我可以很輕鬆地(但乏味地)使用if-else-if語句。
1)“假設月份是一個int變數,其值為1或2或3或5...或11或12。
編寫一個值為“jan”或“feb”或“mar”或“apr”的表示式,或者基於月份的值是“may”或“jun”或“jul”或“aug”或“sep”或“oct”或“nov”或“dec”。
(因此,如果month的值為4,則表示式的值將為“apr”。
)。
我的主意看起來像這樣:(month==1)?"jan":(month==2)?"feb":(month==3)?"mar":(month==4)?"apr":
(month==5)?"may":(month==6)?"jun":(month==7)?"jul":(month==8)?"aug":
(month==9)?"sep":(month==10)?"oct":(month==11)?"nov":(month==12)?"dec":
(我知道這不是一個完整的表示式,但是我不確定如何用片語運算子來處理這麼多條件。
)2)假設credits是一個int變數,其值為0或正數。
根據學分的價值寫一個表示式,其值為“新人”或“大二”或“初中”或“高階”。
特別是:如果積分的價值小於30,則表示式的價值為“新鮮人”;30-59將是“大二”,60-89將是“初中”,90或更多將是“高階”。
再一次,我一直在玩耍,我能想到的最好的東西是這樣的(而且我很可能缺少一些必要的括號):credits<30?"freshman":credits>=30&&<=59?
"sophomore":credits>=60&&<=89?"junior":"senior"
我已經在Google周圍搜尋並檢查了這裡的資料庫,但是我不認為有什麼與這個問題完全相同。
如果我錯了,請原諒我。
程式(CodeLab)不會採用Switch-Case或if-else-if解決方案,總是提示我應該使用條件?:運算子,但是我一直到哪裡都沒有弄清楚如何操縱該運算子來處理這麼多條件。
我們在本書中還不算太遠,所以如果你們能幫助我找到解決方案,那是一件很棒的事情,如果我能從我到目前為止所學的知識中汲取靈感的話。
解決辦法
對於的第一個問題,您確實可以使用三元運算子,但是更簡單的解決方案是使用帶有月份描述的String[],然後對該陣列下標:String[]months={"jan","feb","mar",...};
intmonth=1;//jan
StringmonthDescription=months[month-1];//arraysare0-indexed
現在,對於您的第二個問題,三元運算子似乎更合適,因為您的條件較少,儘管if更容易閱讀,恕我直言:Stringyear="senior";
if(credits<30){
year="freshman";
}elseif(credits<=59){
year="sophomore";
}elseif(credits<=89){
year="junior";
}
將此與三元運算子進行對比:Stringyear=credits<30?"freshman":credits<=59?"sophomore":credits<=89?"junior":"senior";
Hibernate丟擲MultipleBagFetchException
«上一篇
為什麼我得到異常java.lang.NoClassDefFoundErrororg/codehaus/groovy/?下一篇»
相關推薦
三元運算子的多個條件安全嗎?
在條件運算子中使用物件兩次是否會產生UB?
C++條件運算子的多個語句
將增減運算子放在三元/條件運算子中是否安全?
為什麼在條件運算子(?:)中,第二個和第三個運算元必須具有相同的型別?
如何在三元條件運算子中使用Optional變數?
三元條件運算子中的多個條件?
在三元/條件運算子中進行轉換時出現奇怪的編譯器錯誤
是否可以在python一類輪三元條件運算子中放置中斷
條件運算子中的“錯誤:左值需要作為賦值的左運算元”
搜尋
基礎教學
Mysql入門
Sql入門
Android入門
Docker入門
Go語言入門
Ruby程式入門
Python入門
Python進階
Django入門
Python爬蟲入門
新加入文章
延伸文章資訊
- 1[JAVA]流程控制三元運算子 - 程式開發學習之路
三元判斷式判斷式?成立程式區塊:不成立程式區塊三元判斷式, 可以說是if else 的簡寫版, 如果你的if else判斷是簡單的判斷, 可使用這三元判斷式, ...
- 2Java三元運算子 - tw511教學網
Java三元運算子是唯一採用三個運算元的條件運算子。Java三元運算子是 if-then-else 語句的單行替換方案,它在java程式設計中使用非常廣泛。也可以使用三元 ...
- 3java三元運算子 - w3c菜鳥教程
java三元運算子,由符號表示的,具體的含義其實就和if else結構的含義差不多,這種運算子會將某個條件作兩種處理,如果滿足條件的話就執行第一個結果, ...
- 4三元、型態比對運算子- Java備忘筆記 - GitBook
介紹三元運算子的用法及型態比對運算子instanceof。 ... 我們在設計Java程式的時候,有時候會想知道這個物件是不是屬於某個類別(class)、某個子類別(subclass)、或某個 ...
- 5Java 三元運算子(ternary operator)用法 - 菜鳥工程師肉豬
expression1 : expression2 又稱為條件運算子(conditional operator)用法如下。 ternary operator其實就是 if {...} else ...