java邏輯運算符_Java邏輯運算符

Java邏輯運算符

Java邏輯運算符包含下面6中符號:

&& 與 ;&& 與 ?前后兩個操作數必須都是true才返回true,否則返回false

& 不短路與 ;?& 不短路與 表達式都會執行到

|| 或;?|| 或 只要兩個操作數中有一個是true,就返回true,否則返回false

|不短路或 ;| 不短路 或?表達式都會執行到

!非;! 非 ,如果操作數為true,返回false,否則,返回true

^異或;^ 異或 ,當兩個操作數不相同時返回true,返回false

真值表

A???? ?????????????? B???????????? ?????????????? A&&B????? A||B???????? !A ????????? A^B????????? A&B???????? A|B

false ????????????? false?????????????????????? false ?????? false ?????? true???????? false??????? false ???????? false

true ?????????????? false??????? ?????????????? false ????? true ???????? false??????? true ?? ??????false????????? true

false?????????????? true???????? ?????????????? false??????? true???????? true???????? true???????? false??????????true

true ? ? ? ? ? ? ? ? ? ? true ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?true ? ? ? ? ?? true ? ? ? ?? ? false ? ? ?? ? ?false ? ? ? ? ? ?true ? ? ? ? ? ?? true

總結

兩種邏輯與(&&和&)的運算規則基本相同,兩種邏輯或(||和|)的運算規則也基本相同。其區別是:&和|運算是把邏輯表達式全部計算完,而&&和||運算具有短路計算功能。所謂短路計算,是指系統從左至右進行邏輯表達式的計算,一旦出現計算結果已經確定的情況,則計算過程即被終止。對于&&運算來說,只要運算符左端的值為false,則因無論運算符右端的值為true或為false,其最終結果都為false。所以,系統一旦判斷出&&運算符左端的值為false,則系統將終止其后的計算過程;對于 || 運算來說,只要運算符左端的值為true,則因無論運算符右端的值為true或為false,其最終結果都為true。所以,系統一旦判斷出|| 運算符左端的值為true,則系統將終止其后的計算過程。

例如,有如下邏輯表達式:

(i>=1) && (i<=100)

此時,若i等于0,則系統判斷出i>=1的計算結果為false后,系統馬上得出該邏輯表達式的最終計算結果為false,因此,系統不繼續判斷i<=100的值。短路計算功能可以提高程序的運行速度。

建議:在程序設計時使用&&和||運算符,不使用&和|運算符。

用邏輯與(&&)、邏輯或(||)和邏輯非(!)可以組合出各種可能的邏輯表達式。邏輯表達式主要用在 if、while等語句的條件組合上。

例如:

int i = 1;

while(i>=1) && (i<=100) i++;??? //循環過程

上述程序段的循環過程將i++語句循環執行100次。

例子

if((23>24)&&(100/0==0)){//23>24 為false,后面條件就不執行判斷,當23<24為true,后面條件繼續執行判斷,拋出異常java.lang.ArithmeticException: / by zero

}

if((23>24)&(100/0==0)){//條件必須都執行判斷,拋出異常java.lang.ArithmeticException: / by zero

}

if((23<24)||(100/0==0)){// ||短路或,當第一個條件為true,后面條件不執行判斷;

}

if((23>24)|(100/0==0)){// | 非短路或,所有條件都要執行判斷

}

例子二

版權聲明:本文為JAVASCHOOL原創文章,未經本站允許不得轉載。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/532039.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/532039.shtml
英文地址,請注明出處:http://en.pswp.cn/news/532039.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

跨站點請求偽造_十大常見web漏洞——跨站點請求偽造(CSRF)

CSRF介紹什么是CSRF呢&#xff1f;我們直接看例子。https://mp.toutiao.com/profile_v3/graphic/preview?dodelete&pgc_id6829574701128352260這個URL是頭條刪除pgc_id為6829574701128352260的一篇文章的連接&#xff0c;通過執行這個URL用戶就可以刪除這篇文章。首先攻擊…

java多線程隊列_java多線程消費者生產者模式(BlockingQueue 通過阻塞隊列實現)

import java.util.concurrent.BlockingQueue;import java.util.concurrent.LinkedBlockingQueue;/*** Created with IntelliJ IDEA.* User: csx* Date: 4/24/14* Time: 9:56 AM* To change this template use File | Settings | File Templates.** 生產者與消費者模型中&#x…

unique函數_C++核心準則C.35:基類的析構函數必須滿足的條件

C.35: A base class destructor should be either public and virtual, or protected and nonvirtual基類的析構函數要么是公開的虛函數&#xff0c;要么是保護的非虛函數Reason(原因)To prevent undefined behavior. If the destructor is public, then calling code can atte…

java jta 例子_Java事務處理全解析(八)——分布式事務入門例子(Spring+JTA+Atomikos+Hibernate+JMS)...

在本系列先前的文章中&#xff0c;我們主要講解了JDBC對本地事務的處理&#xff0c;本篇文章將講到一個分布式事務的例子。請通過以下方式下載github源代碼&#xff1a;本地事務和分布式事務的區別在于&#xff1a;本地事務只用于處理單一數據源事務(比如單個數據庫)&#xff0…

python連接redis哨兵_Python redis.sentinel方法代碼示例

本文整理匯總了Python中redis.sentinel方法的典型用法代碼示例。如果您正苦于以下問題&#xff1a;Python redis.sentinel方法的具體用法&#xff1f;Python redis.sentinel怎么用&#xff1f;Python redis.sentinel使用的例子&#xff1f;那么恭喜您, 這里精選的方法代碼示例或…

交換兩個數組 差最小 java_如何交換兩個等長整形數組使其數組和的差最小(C和java實現)...

1 importjava.util.Arrays;23 /**4 *5 *authorAdministrator6 *7 */8 public classTestUtil {9 private int[] arrysMin null;1011 private int[] arrysMax null;1213 private int matchNum 0;1415 private boolean hasMatched false;1617 /**18 * 返回數組的所有元素的總和…

python 判斷子序列_Leetcode練習(Python):第392題:判斷子序列:給定字符串 s 和 t ,判斷 s 是否為 t 的子序列。...

題目&#xff1a;判斷子序列&#xff1a;給定字符串 s 和 t &#xff0c;判斷 s 是否為 t 的子序列。你可以認為 s 和 t 中僅包含英文小寫字母。字符串 t 可能會很長(長度 ~ 500,000)&#xff0c;而 s 是個短字符串(長度 <100)。字符串的一個子序列是原始字符串刪除一些(也可…

垂直串聯六關節機器人調試手冊_工業機器人有哪些應用你知道嗎?

目前&#xff0c;工業機器人大部分集中于傳統的焊接、噴涂等領域&#xff0c;我國工業機器人的核心部件和整機市場仍被國外壟斷&#xff0c;工業機器人要面向整個智能制造市場&#xff0c;還需要具備應對整個智能制造過程中大多數工藝的能力&#xff0c;而工業互聯網則是實現智…

flume avro java 發送數據_flume將數據發送到kafka、hdfs、hive、http、netcat等模式的使用總結...

1、source為http模式&#xff0c;sink為logger模式&#xff0c;將數據在控制臺打印出來。conf配置文件如下&#xff1a;# Name the components on this agenta1.sources r1a1.sinks k1a1.channels c1# Describe/configure the sourcea1.sources.r1.type http #該設置表示接…

python三角函數擬合_使用python進行數據擬合最小化函數

這是我對這個問題的理解。首先&#xff0c;我通過以下代碼生成一些數據import numpy as npfrom scipy.integrate import quadfrom random import randomdef boxmuller(x0,sigma):u1random()u2random()llnp.sqrt(-2*np.log(u1))z0ll*np.cos(2*np.pi*u2)z1ll*np.cos(2*np.pi*u2)r…

java url 本地文件是否存在_我的應用程序知道URL中是否存在文件會一直停止[重復]...

這個問題在這里已有答案&#xff1a;我試圖寫一個應用程序&#xff0c;如果在給定的URL中有一個文件&#xff0c;將字符串放在textview中&#xff0c;這是代碼和崩潰信息&#xff0c;可能是什么錯誤&#xff1f;public class MainActivity extends AppCompatActivity {String u…

python枚舉類的意義_用于ORM目的的python枚舉類

編輯問題我正在嘗試創建一個類工廠,它可以生成具有以下屬性的枚舉類&#xff1a;>從列表中初始化類允許值(即,它)自動生成&#xff01;).> Class創建自己的一個實例對于每個允許的值.>類不允許創建任何其他實例一旦上述步驟已完成(任何嘗試這樣做會導致異常).>類實…

java 生成校驗驗證碼_java生成驗證碼并進行驗證

一實現思路使用BufferedImage用于在內存中存儲生成的驗證碼圖片使用Graphics來進行驗證碼圖片的繪制&#xff0c;并將繪制在圖片上的驗證碼存放到session中用于后續驗證最后通過ImageIO將生成的圖片進行輸出通過頁面提交的驗證碼和存放在session中的驗證碼對比來進行校驗二、生…

yy自動語音接待機器人_智能語音機器人落地產品有哪些?

據相關研究報告表明&#xff0c;在眾多人工智能落地產品或者應用場景中&#xff0c;智能語音機器人無論從產品的成熟度還是應用的廣泛度來說&#xff0c;都是人工智能行業最熱門和最有前景的產品。智能語音機器人并不只是一款產品&#xff0c;它是所有智能語音系列產品的統稱&a…

java資源文件獲取屬性_Java讀寫資源文件類Properties

Java中讀寫資源文件最重要的類是Properties1) 資源文件要求如下:1、properties文件是一個文本文件2、properties文件的語法有兩種&#xff0c;一種是注釋&#xff0c;一種屬性配置。注 釋&#xff1a;前面加上#號屬性配置&#xff1a;以“鍵值”的方式書寫一個屬性的配置信息…

java被放棄了_為什么學Java那么容易放棄?

學習Java確實很容易就放棄&#xff0c;但是也很容易就學好&#xff0c;因為大多數人都是抱著試一試的心態&#xff0c;然后當后面就堅持不下去但是回過頭來想一想&#xff0c;打游戲上分容易嗎&#xff0c;一樣是磕磕碰碰的&#xff0c;有時候十幾連跪都不會放棄你上分的心情。…

python 隱馬爾科夫_機器學習算法之——隱馬爾可夫(Hidden Markov ModelsHMM)原理及Python實現...

前言上星期寫了Kaggle競賽的詳細介紹及入門指導&#xff0c;但對于真正想要玩這個競賽的伙伴&#xff0c;機器學習中的相關算法是必不可少的&#xff0c;即使是你不想獲得名次和獎牌。那么&#xff0c;從本周開始&#xff0c;我將介紹在Kaggle比賽中的最基本的也是運用最廣的機…

java編程50_java經典50編程題(1-10)

1.有一對兔子從出生后第三個月起&#xff0c;每個月都生一對小兔子&#xff0c;小兔子長到三個月后每個月又生一對兔子&#xff0c;假設兔子不死亡&#xff0c;問每個月兔子的總數為多少&#xff1f;分析過程圖片發自簡書App示例代碼圖片發自簡書App運行結果圖片發自簡書App反思…

python替代hadoop_Python連接Hadoop數據中遇到的各種坑(匯總)

最近準備使用PythonHadoopPandas進行一些深度的分析與機器學習相關工作。(當然隨著學習過程的進展&#xff0c;現在準備使用PythonSparkHadoop這樣一套體系來搭建后續的工作環境)&#xff0c;當然這是后話。但是這項工作首要條件就是將Python與Hadoop進行打通&#xff0c;本來認…

java 自動化測試_java寫一個自動化測試

你模仿購物車試一下&#xff0c;同樣是買東西&#xff0c;加上勝負平的賠率&#xff0c;輸出改下應該就可以了package com.homework.lhh;import java.util.ArrayList;import java.util.Comparator;import java.util.Scanner;public class Ex04 {public static void main(String…