由于for循环中的值为空,记录未处理

时间:2019-02-11 19:06:06

标签: java

我编写了一个Java jms代码来执行消息,我的问题是我在列表中有10条记录,它正在处理前两个记录,并且由于第三条记录为空,因此从第三条记录开始未处理,请帮我跳过空消息,并进行for循环以处理剩余记录。 如果任何消息为空,是否可以跳过并继续。 在此先感谢

我的日志在else部分中记录了失败的“空指针异常”,并且进一步退出循环了。

我的Java代码:

 for (createTestbean createTestBean : createTestbeanList) {             
                    String createTestMessage = createTestBean.getMessage();
   TextMessage textMessage = queueSession
                    .createTextMessage(createTestMessage);
TextMessage tm;                

 String replymessage = null ;
                String code = null;
            Message message = queueReceiver.receive(60 * 1000);
            if (message != null) {
                logger.info("Received message:\n" + message);
                 tm =(TextMessage) message;
                logger.info("Message:" + tm.getText()); 
                replymessage =tm.getText();
                } else {
                logger.info("No message received!\n");
                recordFailure(null);
            }
             code = replymessage.split(",")[2];
             createTestDAO rmdao = new createTestDAO();
             rmdao.updateCreateTest(replymessage,code);
            }

1 个答案:

答案 0 :(得分:0)

您可以使用continue语句来完成此操作:

if (createTestBean == null)
    continue;

如果creatTestBean为null,它将直接跳到循环的update语句。