寫場地王搜尋程式,判斷前端傳來的值遇到了問題,搞了好久終於解開
原來是基本的語法邏輯沒搞透徹
前端傳來計價方式(A),及價格區間(低值B、高值C)三個參數
要判斷三者全都有值才會加入SQL語法
if (A!=null && B!=null && C!=null){
sql.append(.....);
}
但是即使前端三個條件沒有全部成立,判斷式內的語法還是會被執行
最後發現原來即使前端是空值(null),但是還是會傳回空字串(""),所以得用A.equals("")處理字串,最後!A.eqauls("")判斷...
原來是基本的語法邏輯沒搞透徹
前端傳來計價方式(A),及價格區間(低值B、高值C)三個參數
要判斷三者全都有值才會加入SQL語法
if (A!=null && B!=null && C!=null){
sql.append(.....);
}
但是即使前端三個條件沒有全部成立,判斷式內的語法還是會被執行
最後發現原來即使前端是空值(null),但是還是會傳回空字串(""),所以得用A.equals("")處理字串,最後!A.eqauls("")判斷...
2 則留言:
建議你在這種情況下
應該用 "".equals(A)
不用 A.equals("")
因為 A 不知道會不會是NULL ??
謝謝火星Q比的建議
我們來改改看
謝謝~
張貼留言