java中的或者
⑴ java 中|| 和 && 這類的符號都表示什麼
&&和||是一種邏輯運算符,&&是邏輯與,當兩個數都為真,則結果為真。||是邏輯或,兩個數任意一個為真,則結果為真。
舉個例子:
1、a && b
當a、b都為真時,結果為真。有一個為假或者都為假時結果為假。
2、a || b
當a、b有一個為真時,結果為真。a、b都為假時結果為假。
(1)java中的或者擴展閱讀:
在java中還有其他的邏輯符號,比如:!、|、 &
「!」是非運算符號,比如a為真,則!a則為假。a如果為假,則!a為真。
而「|」也是邏輯或,「&」也是邏輯與,但是他們與「||」和「&&」有些區別,區別如下:
「&」與「|」無論第一個判斷條件是否成立,邏輯運算符前後兩個條件都會進行判斷。
「&&」與「||」,前者第一個條件不成立,後面的條件均不進行判斷,返回false;後者第一個條件成立,後面的條件均不進行判斷,返回true。
⑵ Java中「||」與「|」的區別
兩者都是或,但是不一樣。
不同點:同與操作類似,||表示短路或,當運算符左邊的值為true時,右邊的表達式不會進行運算。
舉個例:
int i=0;
if(3>2 || (i++)>1) i=i+1;
System.out.println(i);
這段程序會列印出1,而不是列印出2。
因為在if的條件判斷中,程序先判斷第一個表達式3>2是否成立,結果3>2為真,那麼按照邏輯來
說,無論後面一個表達式(i++)>1是否成立,整個或表達式肯定為真,因此程序就不去執行判斷後面
一個表達式即(i++)>1了,所以這里i並沒有自增1。然後程序執行到i=i+1,於是i變為1。最後列印
出1。
int i=0;
if(3>2 | (i++)>1) i=i+1;
System.out.println(i);
如果換做這樣寫,那麼就是列印出2了,因為無論第一個條件3>2是否為真,程序都會去執行判斷第
二個條件表達式,因此i++這個自增是會被執行的,再加上if內的i=i+1,所以最終i=2。
(2)java中的或者擴展閱讀
|與||的相同點:二者都表示或操作,當運算符兩邊的操作數任何一邊的值為true時,其結果為true,當兩邊的值都為false時,其結果才為false。
&與&&的異同點。
相同點:二者都表示與操作,當且僅當運算符兩邊的操作數都為true時,其結果才為true,否則為false。
不同點:在使用&進行運算時,不論左邊為true或者false,右邊的表達式都會進行運算。如果使用&&進行運算時,當左邊為false時,右邊的表達式不會進行運算,因此&&被稱作短路與。
注意事項:
邏輯運算符一般用於連接boolean類型的表達式或者值。
表達式:就是用運算符把常量或者變數連接起來的符合java語法的式子。
算術表達式:a + b
比較表達式:a == b(條件表達式)
⑶ java中邏輯或用什麼表示
用「||」表示。
如:條件語句中"if(a>3||a<1)"的意思就是說如果a大於3或者a小於1的時候滿足判斷條件。
備註:邏輯或中多個條件中只要滿足一個條件,那麼此判斷為真,多個條件同時為假的時候才為假。
⑷ 在java中「或者」用什麼符號表示!我只知道在C#中或者用「||」(兩個豎線表示)
可以用 "||" 或者是 "|"
"||"與"|"的區別如下:
例如:
表達式1 || 表達式2 當表達式1為真的時候,就不會再判斷或執行表達式2(只有表達式1為假時,才會執行表達式2)
表達式1 | 表達式2 不論表達式1的結果是否為真,都會執行表達式2
希望對你有用!
⑸ java里的&&,||和!()什麼意思,還有==和=又什麼區別
&&: 是邏輯運算符,代表與(就是並且),條件都成立,返回值是 true,否則 FALSE
||: 是邏輯運算符,代表或(就是或者),條件中有一者成立,返回值是 true
否則 false
!():是邏輯運算符,代表非(就是取反),把真的變成假的,或者把假的變成真的
==: 比較運算符,判斷是否相等
=: 賦值運算符,例: i = 10;
⑹ java中的短路與(&&)、短路或(||) 與 邏輯與(&)、邏輯或(|)有什麼區別啊
首先名稱是不同的:
&&邏輯與||邏輯或它們都是邏輯運算符
&按位與|按位或它們都是位運算符
if(a==1&&b==2)這是說既要滿足a=1也要滿足b=2
if(a==1||b==2)這是說或者滿足a=1或者要滿足b=2
而a&b或者a|b則是二進制的與或運算
&同為1時為1,否則為0
|同為0時為0,否則為1
3&5則
0011
&0101
0001
等於1
3|5則
0011
|0101
0111
等於7
&&邏輯與也叫做短路與因為只要當前項為假,它就不往後判斷了,直接認為表達式為假
||邏輯或也叫做短路或因為只要當前項為真,它也不往後判斷了,直接認為表達式為真