Java中集合中根据对象的某个属性去重
生活随笔
收集整理的這篇文章主要介紹了
Java中集合中根据对象的某个属性去重
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
場景
有一個List對象集合,根據(jù)每一個對象的某個屬性去重。
實(shí)現(xiàn)
去重方法:
?private static ArrayList<FlightResult> removeDuplicateFlight(List<FlightResult> flights) {Set<FlightResult> set = new TreeSet<FlightResult>(new Comparator<FlightResult>() {@Overridepublic int compare(FlightResult o1, FlightResult o2) {//字符串,則按照asicc碼升序排列return o1.getAirlinename().compareTo(o2.getAirlinename());}});set.addAll(flights);return new ArrayList<FlightResult>(set);}?
實(shí)際調(diào)用示例:
//獲取國際機(jī)票航空公司不重復(fù)航空公司private List<FrontSelectModel> getGJAirlineList(List<ResultInfo> resultInfo, List<FrontSelectModel> airlineList) {List<ResultInfo> tmplist = new ArrayList<ResultInfo>();tmplist.addAll(resultInfo);?List<FlightResult> flightList= new ArrayList<FlightResult>();//取得所有航班for (int i = 0; i < tmplist.size(); i++) {for(int k = 0; k < tmplist.get(i).getFlightResult().size(); k++) {flightList.add(tmplist.get(i).getFlightResult().get(k));}}//去重List<FlightResult> flightListAfterQvChong=removeDuplicateFlight(flightList);for (FlightResult result : flightListAfterQvChong) {FrontSelectModel fsm = new FrontSelectModel();fsm.setKey(result.getAirlinename());fsm.setValue(result.getAirline());airlineList.add(fsm);}return airlineList;}?
總結(jié)
以上是生活随笔為你收集整理的Java中集合中根据对象的某个属性去重的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java中怎样将Json字符串转换成实体
- 下一篇: Java中将CST格式的时间字符串进行格