小编Bro*_*rod的帖子

比较两个arraylist内容并将不匹配的内容存储在另一个arraylist中

我想比较两个arraylist内容.

我以这种方式存储对象.

对于Arraylist 1:

Employee e1=new Employee();

e1.setID("1");
e1.setID("2");

ArrayList<Employee>list1 = new ArrayList<Employee>(); 

if(e1!=null){
    list1.add(e1);
}
Run Code Online (Sandbox Code Playgroud)

对于Arraylist 2:

Employee e2=new Employee();

e2.setID("1");
e2.setID("2");
e2.setID("4");

ArrayList<Employee>list2 = new ArrayList<Employee>(); 

if(e2!=null){
    list2.add(e2);
}
Run Code Online (Sandbox Code Playgroud)

现在我试图以这种方式比较上面的arraylist内容

ArrayList<Employee>unmatchedList = new ArrayList<Employee>();   

for (Employee l1 : list1){                               
    if(!list2.contains(l1.getID())){    
        System.out.println("list2 does not contains this ID"+l1.getID());   
        Employee e3=new Employee();          
        e3.setID(l1.getID());

        if(unmatchedList==null){            
        unmatchedList=new ArrayList<Employee>();            
        unmatchedList.add(e3);          
        }

        if(unmatchedList!=null){                            
            unmatchedList.add(e3);              
        }                       
    }
}
Run Code Online (Sandbox Code Playgroud)

但我并没有将正确的unmatchedList内容仅作为"4".我得到unmatchedList为"1"和"2"这是错误的.那么如何才能在"unmatchedList"中获得不匹配的内容

java compare arraylist

5
推荐指数
1
解决办法
3万
查看次数

Spring Cloud QueueMessagingTemplate#convertAndSend Batch

我正在尝试使用 Spring Cloud 将一批项目发送到 Amazon SQS。我可以发送单个项目。但是,将它发送到队列的时间往往会乘以我发送的项目数。我基本上遵循参考文档的示例

AWS 文档中,您可以一次发送最多 10 个项目的批次。所以我的问题是 QueueMessagingTemplate 或其他 Spring Cloud 类是否允许您这样做?

此代码片段显示了我想要做什么。我不想将项目作为对象发送,因为我希望每个项目都单独放置在队列中。

@Service
@EnableConfigurationProperties(SqsConfigMappingProperties.class)
public class SqsServiceImpl implements SqsService {

    @Autowired
    String queueName;

    @Autowired
    QueueMessagingTemplate queueMessagingTemplate;

    @Override
    public void sendSqsMessage(List items) {
        //Can't really send a batch size here
        int batchSize = 10;
        queueMessagingTemplate.convertAndSend(queueName, items, 10);
    }
}
Run Code Online (Sandbox Code Playgroud)

java amazon-sqs amazon-web-services spring-cloud

5
推荐指数
1
解决办法
1756
查看次数