0
我有一个ArrayList<History>
。拆分ArrayList属性
的History
类有一个属性event
是否有可能在关系中的倍数ArrayList<History>
ArrayList<History>
分裂他们的活动吗?
谢谢
我有一个ArrayList<History>
。拆分ArrayList属性
的History
类有一个属性event
是否有可能在关系中的倍数ArrayList<History>
ArrayList<History>
分裂他们的活动吗?
谢谢
您可以使用Group By on事件字段。
public class CreditCard {
private String event;
private String name;
public CreditCard() {
// TODO Auto-generated constructor stub
}
public CreditCard(String event, String name) {
super();
this.event = event;
this.name = name;
}
public String getEvent() {
return event;
}
public void setEvent(String event) {
this.event = event;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "CreditCard [event=" + event + ", name=" + name + "]";
}
public static void main(String[] args) {
List<CreditCard> list = new ArrayList<CreditCard>();
list.add(new CreditCard("A", "John1"));
list.add(new CreditCard("B", "John2"));
list.add(new CreditCard("C", "John3"));
list.add(new CreditCard("A", "mark1"));
list.add(new CreditCard("B", "mark2"));
list.add(new CreditCard("C", "mark3"));
Map<String,List<CreditCard>> obj = list.stream().collect(Collectors.groupingBy(CreditCard::getEvent,Collectors.toList()));
}
}
与Java 8:
List<History> list = Arrays.asList(new History("event1"),
new History("event2"),
new History("event1"));
Map<String, List<History>> result = list.stream()
.collect(Collectors.groupingBy(History::getEvent));
会产生地图事件名称作为密钥,并且History
条目的列表作为值。
你应该使用某种multimap事件作为密钥 –
我的答案是否适合你? –