尝试创建两个JSONObjects和值并为Arraylist获取它。 我使用Java8 ParallelStream和forEach功能来实现这一目标。
请在下面找到我的代码,我无法在单个forEach方法中创建两个JSONobject。
出现错误:userlist cannot be resolved
user_list.parallelStream().forEach((userlist) ->
purchaserDetail.put("Purchaser", userlist.getName()),
purchaserDetail.put("Purchaser_Email", userlist.getEmail_address()) ) ;
答案 0 :(得分:2)
多个语句需要大括号:
user_list.parallelStream().forEach((userlist) -> {
purchaserDetail.put("Purchaser", userlist.getName());
purchaserDetail.put("Purchaser_Email", userlist.getEmail_address());});
如果您关心将元素放入forEachOrdered
的顺序,则可能需要使用purchaserDetail
。
答案 1 :(得分:0)
同意@Eran的回答以包装成{}。我不认为这是线程安全的,因为同一个对象purchaseserDetail是由并行流放置的,当想要放到同一个对象时不要使用并行流,除非正在操作的对象是线程安全的实现(即的ConcurrentHashMap)