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

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

三元運算符Java

三元運算符Java

三元運算符Java有沒有辦法在三元操作中實現(xiàn)這一點。我對這三元知識還很陌生,也許您可以指導我。if(selection.toLowerCase().equals("produkt"))      cmdCse.setVisible(true);else      cmdCse.setVisible(false);這似乎無效。selection.toLowerCase().equals("produkt")?cmdCse.setVisible(true):cmdCse.setVisible(false);
查看完整描述

3 回答

?
慕勒3428872

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

在這種情況下,您甚至不需要三元運算符:

 cmdCse.setVisible(selection.toLowerCase().equals("produkt"));

或者,清潔工:

 cmdCse.setVisible(selection.equalsIgnoreCase("produkt"));

您的版本:

selection.toLowerCase().equals("produkt")? cmdCse.setVisible(true): cmdCse.setVisible(false);

在語義上是不正確的:三元運算符應表示替代的賦值,它不能完全替代if語句。還行吧:

double wow = x > y? Math.sqrt(y): x;

因為你要么分配xMath.sqrt(y)wow根據(jù)條件。

我的2cents:僅在使程序更清晰時才使用三元運算符,否則最終將得到一些難以理解的單線。


查看完整回答
反對 回復 2019-09-26
?
慕容3067478

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

三元運算符與if語句不完全一樣。三元運算符必須從雙方“返回”某些內(nèi)容,因此將像setVisible()這樣的void方法調(diào)用放在那兒是行不通的。

相反,您可以完全不用三元運算符來執(zhí)行以下操作:

cmdCse.setVisible(selection.toLowerCase().equals("product"));

但是,為了說明這一點,三元等價物看起來像這樣:

cmdCse.setVisible(selection.toLowerCase().equals("product") ? true : false);

請注意,現(xiàn)在三元運算符如何在兩側(cè)“返回”真或假,而不是簡單地調(diào)用void方法。


查看完整回答
反對 回復 2019-09-26
?
四季花海

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

直接從文檔

如果使代碼更易讀,請使用?:運算符而不是if-then-else語句。例如,當表達式緊湊且沒有副作用(例如賦值)時。

如果您cmdCse.setVisible(true / false);不返回任何內(nèi)容,并且該操作還具有副作用(它會更改的狀態(tài)cmdCse),因此此處不能使用條件運算符(當您使用運算符時,?:分支必須具有相同的返回類型)。

順便說一句,請注意.. ? .. : ..應稱為conditional operator


查看完整回答
反對 回復 2019-09-26
  • 3 回答
  • 0 關(guān)注
  • 645 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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