I am trying to update a property of bean (if it satisfies a condition) while iterating over list of it. To enhance the performance I am using Lists.transform
private void populate(final WorkFlowDataBean workFlowDataBean, final List<ApplicationDataBean> items) {
Lists.transform(items, new Function<ApplicationDataBean, ApplicationDataBean>() {
@Override
public ApplicationDataBean apply(ApplicationDataBean input) {
if (String.valueOf(workFlowDataBean.getId().intValue()).equalsIgnoreCase(String.valueOf(input.getWorkflowId().intValue()))) {
input.setWorkflowName(workFlowDataBean.getName());
input.setWorkflowVersion(workFlowDataBean.getVersion());
logger.info("---finally----");
}
logger.info(String.valueOf(workFlowDataBean.getId().intValue()) + "===" + String.valueOf(input.getWorkflowId().intValue()));
return input;
}
});
}
I cannot use foreach loop as it will slow down my application.