2 回答

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超8個(gè)贊
對(duì)于您的問(wèn)題,我有一個(gè)簡(jiǎn)單的解決方案。當(dāng)用戶全選時(shí),在這種情況下傳遞空列表,并在進(jìn)行查詢時(shí)僅放置此條件。
if (outletList.size()==0) {
// case for all
} else {
// do regular stuff
}

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超6個(gè)贊
您不是在比較可比較的類型。outletList是 aList并且它不能等同于 aString即使列表可能只包含一個(gè)恰好是 a 的元素String。所以,outletList.equals("ALL")不會(huì)做你認(rèn)為它會(huì)做的事情。
但這提出了一個(gè)有趣的觀點(diǎn)。您有一個(gè)選擇列表,但multiple為什么不返回一個(gè)始終是單個(gè)值的列表?為什么在ALL選擇時(shí)切換到發(fā)回空列表?這沒(méi)有意義;正如預(yù)期的那樣,有一個(gè)選擇。這增加了不必要的混亂。
嘗試將單個(gè)值作為 a 發(fā)回String并讓該值確定邏輯,以便您具有靈活性。如果這是無(wú)法避免的名單,然后只接受一個(gè)值(list[0]例如)和呼叫平等上是 沒(méi)有的List。
if(outletList[0].equals("All")) {...}
如果你后來(lái)發(fā)現(xiàn)自己需要不止一if-else對(duì),你可以切換到switch這樣的:
switch(outletList[0]) { // or the single value...
case "ALL":
...
...
default:
...
}
添加回答
舉報(bào)