ProjectOrder projectOrder = projectOrderMapper.selectById(projectId);
if (projectOrder.getUseModel() != null && !"".equals(projectOrder.getUseModel())) {
//此項目已選中的模塊
String[] modelIds = projectOrder.getUseModel().split(",");
if (modelIds.length > 0) {
for (ModelTypeVO vo : allModel) {
for (String id : modelIds) {
if (vo.getModelTypeId().equals(Integer.parseInt(id))) {
vo.setChecked(1);
}
}
}
}
}
經過debug發現,最終找出原因
o.getModelTypeId().equals(Integer.parseInt(id) 強制轉換導致報錯。
如果string數組modelIds為''(空字符串)時,models.length等於1,進入該循環。空字符串強轉引發報錯 For input string: ""。
解決方法:在判斷條件加上 && !"".equals(projectOrder.getUseModel()。
即 if (projectOrder.getUseModel() != null && !"".equals(projectOrder.getUseModel())) {}