我的條件在我的程序...關於三元運算符..!
boolean allow = false;
if RewardsSupport.isRewardsEnabled()) {
allow = true;
}
return (allow);
能否請你幫我在上面的代碼轉換爲每個三元運算符.. !!
我的條件在我的程序...關於三元運算符..!
boolean allow = false;
if RewardsSupport.isRewardsEnabled()) {
allow = true;
}
return (allow);
能否請你幫我在上面的代碼轉換爲每個三元運算符.. !!
下面的解決方案是採用三元運算符的要求:
return RewardsSupport.isRewardsEnabled() ? true : false;
所述病症是像that..public布爾issRewardsEnabled(){ \t \t字符串值= posParameterSupport.getStringParamValue( \t \t \t \t IParameterConstants.REWARDS_ENABLED, 「假」); \t \t boolean enabled = Boolean.parseBoolean(value); \t \t return(enabled); \t} ..請告訴我這個..! – Neera 2012-04-08 14:31:17
沒有理由在這裏使用三元運算。由於你的值已經是布爾值,所以你應該只是說return RewardsSupport.isRewardsEnabled();
。
有什麼意義?爲什麼不只是有這樣的:
return RewardsSupport.isRewardsEnabled()
而且,它應該被稱爲areRewardsEnabled()
...然後,該方法的重點是什麼?大概只需將支票內聯到任何地方(或存儲在本地,如果這提高了可讀性)。 – tvanfosson 2012-04-08 14:28:01
...和一些Web應用程序框架專門查找isRewardsEnabled,而不是areRewardsEnabled,它可能會混淆任何人 - 即JSF視圖掛鉤 – 2012-04-08 14:39:33
同意,大多數框架在那裏期望'是'前綴。雖然如果他們能夠識別出具有複數駱駝案例並從「正在」轉換爲「正在」的方法,那將是一件很酷的事情,但我不認爲這是一個重要的問題,一旦解決,將會給開發行業帶來革命性的變化。另一個例子是傑克遜的JSON串行器和DataNucleus的JDO。他們都會期望'是'前綴。 – jmort253 2012-04-08 22:36:10
你不需要的東西三元運營商,涉及布爾:
boolean allow = RewardsSupport.isRewardsEnabled();
如果你想返回,例如,一個整數,你可以這樣做與三元條件運算符是這樣的:
int reward = RewardsSupport.isRewardsEnabled() ? rewardAmount : 0;
條件是這樣的..公共布爾issRewardsEnabled(){字符串值= posParameterSupport.getStringParamValue(IParameterConstants.REWARDS_ENABLED,「false」); boolean enabled = Boolean.parseBoolean(value);返回(啓用); } ..請告訴我這個..! – Neera 2012-04-08 14:32:24
@Neera你可以在我的答案的第二部分作爲模板修改你的'if'條件:'true'的表達式在'?'和':'之間,'false'的表達式在':'後面。 。 – dasblinkenlight 2012-04-08 14:52:46
你表現出的代碼甚至不要求三元操作 – MByD 2012-04-08 14:26:43