我有以下代碼:問題IFS的
boolean Short = x();
boolean Long = y();
boolean Longer = z();
if (Short)
return "abc";
if (Long)
return "def";
if (Longer)
return "ghi";
三個布爾方法(X,Y,Z)都做價值數學。如果上述3個if不計算爲真,我需要額外的if語句來返回數字。這怎麼能做到,有沒有多餘的ifs?另外,我需要知道ifs的優先級?我的名字是「dotnet」,但我同樣是Java程序員(我花了很多時間試圖像.NET一樣撿起它)。
感謝
副作用的定義是什麼? – dotnetdev 2010-10-04 22:35:05
函數或方法除了返回值外,還會以可觀察的方式修改其環境;例如,它可以修改一些外部變量。如果方法'x()','y()'和'z()'有副作用,那麼我的答案中的第二個和第三個代碼片段不一定等同於第一個代碼片段,因爲在第一個代碼片段中,方法總會被評估(因此總會產生相應的副作用),而在第二和第三代碼片段中,有些方法可能不會被評估(因此不會產生相應的副作用)。 – Grodriguez 2010-10-04 23:01:23