Apache Commons Collections - ผสานและจัดเรียง

คลาส CollectionUtils ของไลบรารี Apache Commons Collections มีวิธียูทิลิตี้ต่างๆสำหรับการดำเนินการทั่วไปซึ่งครอบคลุมกรณีการใช้งานที่หลากหลาย ช่วยหลีกเลี่ยงการเขียนโค้ดสำเร็จรูป ไลบรารีนี้มีประโยชน์มากก่อนหน้า jdk 8 เนื่องจากฟังก์ชันที่คล้ายกันมีให้ใน Stream API ของ Java 8 แล้ว

การรวมรายการที่เรียงลำดับสองรายการ

collate () method ของ CollectionUtils สามารถใช้เพื่อรวมสองรายการที่เรียงลำดับแล้ว

คำประกาศ

ต่อไปนี้เป็นคำประกาศสำหรับ

org.apache.commons.collections4.CollectionUtils.collate() วิธีการ -

public static <O extends Comparable<? super O>> List<O>
   collate(Iterable<? extends O> a, Iterable<? extends O> b)

พารามิเตอร์

  • a - คอลเล็กชันแรกต้องไม่เป็นค่าว่าง

  • b - คอลเล็กชันที่สองต้องไม่เป็นค่าว่าง

ส่งคืนค่า

รายการที่จัดเรียงใหม่ซึ่งมีองค์ประกอบของคอลเล็กชัน a และ b

ข้อยกเว้น

  • NullPointerException - หากคอลเล็กชันใดเป็นโมฆะ

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงการใช้งาน org.apache.commons.collections4.CollectionUtils.collate()วิธี. เราจะรวมรายการที่เรียงลำดับสองรายการจากนั้นพิมพ์รายการที่ผสานและเรียงลำดับ

import java.util.Arrays;
import java.util.List;
import org.apache.commons.collections4.CollectionUtils;
public class CollectionUtilsTester {
   public static void main(String[] args) {
      List<String> sortedList1 = Arrays.asList("A","C","E");
      List<String> sortedList2 = Arrays.asList("B","D","F");
      List<String> mergedList = CollectionUtils.collate(sortedList1, sortedList2);
      System.out.println(mergedList);
   }
}

เอาต์พุต

ผลลัพธ์มีดังนี้ -

[A, B, C, D, E, F]