三目運算符之類型轉化


---恢復內容開始---

System.out.println(3<2?'a':98)

---恢復內容結束---

System.out.println(3<2?'a':98)

三目運算符盡量保持兩個操作數的類型一致,避免出現異常

附:轉換規則

    若兩個操作數不可轉換,則不做轉換,返回值為Object類型
    若兩個操作數是明確的類型,按照基礎數據類型的轉換規則來處理(不包括boolean)
    轉換規則:從存儲范圍小的類型到存儲范圍大的類型。
    具體規則為:byte→short(char)→int→long→float→double
具體如下:

(1)如果表達式1和表達式2具有相同的類型,那么整個條件運算符結果的類型就是這個類型。

(2)如果一個表達式的類型是T,T是byte或short或char,另一個表達式的類型是int類型的常量表達式,而且這個常量表達式的值是可以用類型T表示的(也就是說,常量表達式的值是在類型T的取值范圍之內),那么整個條件運算符結果的類型就是T。

(3)除以上情況外,如果表達式1和表達式2的類型不同,那么將進行類型提升(小轉大),整個條件運算符結果的類型就是提升后的類型。


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM