public class Test {
public static void main(String[] args) {
List<CollectionsSuitDto.SuitItemBean> suitItemBeanList = Lists.newArrayList();
CollectionsSuitDto.SuitItemBean suitItemBean = new CollectionsSuitDto.SuitItemBean();
suitItemBean.setItemSeq(0);
CollectionsSuitDto.SuitItemBean suitItemBean1 = new CollectionsSuitDto.SuitItemBean();
suitItemBean1.setItemSeq(1);
CollectionsSuitDto.SuitItemBean suitItemBean2 = new CollectionsSuitDto.SuitItemBean();
suitItemBean2.setItemSeq(2);
CollectionsSuitDto.SuitItemBean suitItemBean3 = new CollectionsSuitDto.SuitItemBean();
suitItemBean3.setItemSeq(null);
suitItemBeanList.add(suitItemBean);
suitItemBeanList.add(suitItemBean1);
suitItemBeanList.add(suitItemBean2);
suitItemBeanList.add(suitItemBean3);
/*Collections.sort(suitItemBeanList, nullsFirst(Comparator.comparing(CollectionsSuitDto.SuitItemBean::getItemSeq)));
suitItemBeanList.forEach(System.out::println);
Collections.sort(suitItemBeanList, Comparator.nullsLast(Comparator.comparing(CollectionsSuitDto.SuitItemBean::getItemSeq)));
suitItemBeanList.forEach(System.out::println);*/
System.out.println("----爲null至於前----");
Collections.sort(suitItemBeanList, Comparator.comparing(CollectionsSuitDto.SuitItemBean::getItemSeq,nullsFirst(naturalOrder())));
suitItemBeanList.forEach(System.out::println);
System.out.println("----爲null至於後----");
Collections.sort(suitItemBeanList, Comparator.comparing(CollectionsSuitDto.SuitItemBean::getItemSeq,nullsLast(naturalOrder())));
suitItemBeanList.forEach(System.out::println);
System.out.println("-----爲null至於後的變形寫法----");
suitItemBeanList.stream().collect(Collectors.toList())
.sort(Comparator.comparing(CollectionsSuitDto.SuitItemBean::getItemSeq,nullsLast(naturalOrder())));
suitItemBeanList.forEach(System.out::println);
lambda排序中nullpoint問題
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.