首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java 邏輯運算符與短路求值機制:&&、||、! 核心行為解析

     編輯:Java 相關知識

基本規則

  • 僅適用於 boolean 型別
  • C/C++ 允許非零整數作真值,Java 嚴格禁止,編譯期直接報錯
  • 關係運算產生 boolean,再進行邏輯運算
  • boolean 自動轉為字串「true」/「false」用於輸出
// 範例輸出
i = 85, j = 4
i > j is true
i < j is false
(i < 10) && (j < 10) is false
(i < 10) || (j < 10) is true

浮點數比較的嚴格性

  • 極微小差異也判定為「不相等」
  • 極小正數(如連續開根號)仍為「非零」

短路求值:核心優化機制

邏輯表達式只在必要時評估:

  • &&:左側 false → 右側不執行(結果必為 false)
  • ||:左側 true → 右側不執行(結果必為 true)
if (test1(0) && test2(2) && test3(2)) // test1=true, test2=false → test3 不執行
// 輸出:
test1(0) result: true
test2(2) result: false
expression is false

效能優勢:避免不必要計算、防止空指針異常(如 obj != null && obj.method())、支援惰性求值模式。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved