<分区>
在项目中我负责的是邮件发送功能,但是在使用队列的时候出现了问题。
private void createReportEmail()
{
try
{
List<Map> list = emailMapper.getToAddress();
System.out.println(list);
MailSenderInfo mailSenderInfo = new MailSenderInfo();
mailSenderInfo = CreateEmailService.sendReportMail(emailMapper);
InternetAddress address = new InternetAddress();
for (int i = 0; i < list.size(); i++)
{
if (list.get(i).get("address").toString() != null && list.get(i).get("address").toString() != "")
address = new InternetAddress(list.get(i).get("address").toString());
MailSenderInfo mailSenderInfo2 = new MailSenderInfo();
mailSenderInfo2 = mailSenderInfo;
mailSenderInfo2.setAddress(address);
queue.offer(mailSenderInfo2);
}
for(int i =0;i<list.size();++i)
{
System.out.println(queue.poll().getAddress());
}
} catch (Exception e)
{
e.printStackTrace();
}
}
现在我确定List中的元素是互不相同的,但是队列中存储的都是列表最后一个元素的内容。我想知道为什么