2015-10-05 98 views
-1

我只是好奇,你將如何接受Java的多路輸入,從我已經試過您無法用邏輯或運營商||爪哇 - 多接受輸入」

所以,如果我想有多個。接受IF語句我將如何做到這一點公認的投入? if (userinput.equalsIgnoreCase("House" || "Home")) 我怎麼能有房子和家庭激活此,而無需創建一個else語句?

回答

1

使用

if((userinput.equalsIgnoreCase("House")) || (userinput.equalsIgnoreCase("Home"))) 
+0

非常感謝!我以爲我在正確的軌道上,我想我只是沒有以正確的方式接近它。我可以多次使用這個(無限期?)來添加各種不同的組合。爲此,我可以使用House,Home,Casa,Haus,Dwelling等? – Infinitylsx

+0

如果有許多輸入,並且如果所有輸入都要被類似處理,則使用開關情況,然後使用下降情況語句(在此情況下,您不會在每個情況後添加斷言) – 2015-10-05 01:25:55

1

如果您需要匹配對許多預定義值,你可以創建一個允許值的列表(在固定的情況下)事前,然後簡單地使用List.contains()爲斷言正確的輸入:

final List<String> validValues = Arrays.asList("HOUSE", "HOME", "CASA"); 

if (validValues.contains(userInput.toUpperCase())) { 
    // do something 
} 
+0

由於@ vikasn91表示使用開關情況好,你認爲這比使用開關盒好嗎? – Infinitylsx

+0

是的。 'switch-case'對於用多個'else if'替換'if'子句是有用的,但當你需要替換單個'if'子句時,它不會很好讀。你可以嘗試兩種選擇,看看哪個更好。 –