#java #html
#java #HTML
Вопрос:
В настоящее время я работаю над проектом, использующим текущую инструкцию if, и я уверен, что совершаю ошибку, кто-нибудь может помочь?
if ("receiveInput" != null){
HTML.clickHtmlLink(objBrowser, ".text", "receiveInput",1);
}
else if ("receiveSyncIt..." != null) {
HTML.clickHtmlLink(objBrowser, ".text", "receiveSyncIt...",1);
}
else if ("ReceiveQueryI..." != null) {
HTML.clickHtmlLink(objBrowser, ".text", "ReceiveQueryI...",1);
}
else {
HTML.clickHtmlLink(objBrowser, ".text", "ReceiveWF_EVE...",1);
}
Комментарии:
1. «receiveInput» — это строка… полагаю, вы хотели сравнить переменную с null
Ответ №1:
"receiveInput" != null
и все остальные условия всегда выполняются. таким образом, он всегда будет использовать первый путь. У вас должно быть что-то вроде
if (var.equals("somestring"))
{
...
}
else if (var.equals("someOtherString"))
{
...
}
Комментарии:
1.
if (var.equals("someString"))
предполагая, чтоvar
являетсяString
Ответ №2:
Если receiveInput является переменной, не заключайте ее в кавычки. Это делает его строкой, а строка никогда не бывает нулевой.
Ответ №3:
Поскольку вы интересуетесь HTML, я предполагаю, что это ключи к карте параметров. Итак, возможно, ваш код должен выглядеть следующим образом:
// request is the incoming HTTP request
if (request.getParameter("receiveInput") != null){
HTML.clickHtmlLink(objBrowser, ".text", "receiveInput",1);
}
else if (request.getParameter("receiveSyncIt...") != null) {
HTML.clickHtmlLink(objBrowser, ".text", "receiveSyncIt...",1);
}
else if (request.getParameter("ReceiveQueryI...") != null) {
HTML.clickHtmlLink(objBrowser, ".text", "ReceiveQueryI...",1);
}
else {
HTML.clickHtmlLink(objBrowser, ".text", "ReceiveWF_EVE...",1);
}
Все те другие умные люди, которые советовали вам использовать equals
вместо ==
для сравнения строк, попали в точку, но это не ваша проблема здесь.
Ответ №4:
«receiveInput» != null всегда имеет значение true. Это статическая строка. Вы имеете в виду иметь container.get(«receiveInput»)?
Ответ №5:
Если это ваш код построчно, то проблема заключается в том, что строки никогда не будут равны null, это жестко закодированные строки.