第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

布爾運算符的不同之處:&VS&和x-vsx

布爾運算符的不同之處:&VS&和x-vsx

一只萌萌小番薯 2019-07-17 10:10:28
布爾運算符的不同之處:&VS&和x-vsx我知道&&和||但是什么是&和|?請用一個例子向我解釋一下。
查看完整描述

3 回答

?
斯蒂芬大帝

TA貢獻1827條經(jīng)驗 獲得超8個贊

這些是按位和按位或運算符。


int a = 6; // 110

int b = 4; // 100


// Bitwise AND    


int c = a & b;

//   110

// & 100

// -----

//   100


// Bitwise OR


int d = a | b;

//   110

// | 100

// -----

//   110


System.out.println(c); // 4

System.out.println(d); // 6

感謝Carlos指出Java語言規(guī)范中的適當部分(15.22.115.22.2)根據(jù)運算符輸入的不同行為。


實際上,當兩個輸入都是布爾值時,運算符被認為是布爾邏輯運算符,并且行為類似于條件-和(&&)和有條件的-或(||)操作人員,除非他們沒有短路,所以在下列情況下是安全的:


if((a != null) && (a.something == 3)){

}

這不是:


if((a != null) & (a.something == 3)){

}

“短路”是指操作人員不一定檢查所有條件。在上面的例子中,&&只在下列情況下才會檢查第二個條件:a不是null(否則,整個語句將返回false,并且無論如何檢查以下條件都是沒有意義的),所以a.something不會引發(fā)異常,或被視為“安全”。


這個&運算符總是檢查子句中的每個條件,所以在上面的例子中,a.something可能會在a實際上是null值,引發(fā)異常。



查看完整回答
反對 回復(fù) 2019-07-17
?
四季花海

TA貢獻1811條經(jīng)驗 獲得超5個贊

我想你說的是這兩個操作符的邏輯含義,這里有一個表格-簡歷:

boolean a, b;Operation     Meaning                       Note---------     -------                       ----
   a && b     logical AND                    short-circuiting
   a || b     logical OR                     short-circuiting
   a &  b     boolean logical AND            not short-circuiting
   a |  b     boolean logical OR             not short-circuiting
   a ^  b     boolean logical exclusive OR  !a          logical NOTshort-circuiting        (x != 0) && (1/x > 1)   SAFE
not short-circuiting    (x != 0) &  (1/x > 1)   NOT SAFE


查看完整回答
反對 回復(fù) 2019-07-17
  • 3 回答
  • 0 關(guān)注
  • 482 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號