Как разделить значения String, возвращаемые методом
Ниже приведен метод, который возвращает набор строк следующим образом: sang1,sang2,sang3,sang4,
@SuppressWarnings("unchecked")
public String getMissedAndDelayReasonList(String missedReasonValue)
{
if(missedReasonValue == null) return null;
List<RCADrpDwn> drpValues = adminDAO.getDropDownValues();
if(drpDwn.getReasonValue()!=null && missedReasonValue.equalsIgnoreCase(drpDwn.getReasonValue()) && drpDwn.getDelayCategory()!=null)
{
uniqueMVs.add(drpDwn.getDelayCategory());
}
}
for(String dcVal:uniqueMVs){
delayValue.append(dcVal).append(",");
return delayValue.toString();
}
и на уровне контроллера я выбираю значения, возвращенные этим методом, и добавляю к объекту, как показано ниже
modelAndView.addObject("delayValue", adminService.getMissedAndDelayReasonList(missedValue));
delayValue выбирается на странице jsp и отображает значение на экране пользовательского интерфейса. Я использую функцию split и stringutils.split(). Ничто не возвращает соответствующее значение, так как мне нужно отделить эти значения и сделать запись в новой строке как следующим образом:
sang1
sang2
sang3
sang4
3 ответа
Решение
Вы можете попробовать это:
var newString = "sang1,sang2,sang3,sang4,".replace(",","<br/>");
Ты можешь использовать:
var newString = "sang1,sang2,sang3,sang4,".split(",").join("<br/>");
for(String dcVal:uniqueMVs){
delayValue.append(dcVal).append(",");
}
return delayValue.toString();
Попробуйте переместить return из for{}, потому что вы, возможно, вернете просто 'sang1,' из метода, а затем не сможете разобрать его с помощью split().