fastutil ขยาย Java Collections Framework โดยจัดเตรียมแผนที่ ชุด รายการ และคิวเฉพาะประเภทด้วยขนาดหน่วยความจำขนาดเล็ก และการเข้าถึงและการแทรกที่รวดเร็ว นอกจากนี้ยังมีอาร์เรย์ ชุด และรายการขนาดใหญ่ (64 บิต) อัลกอริธึมการเรียงลำดับ คลาส I/O ที่รวดเร็วและใช้งานได้จริงสำหรับไฟล์ไบนารี่และข้อความ และสิ่งอำนวยความสะดวกสำหรับการแมปหน่วยความจำไฟล์ขนาดใหญ่
Since version 8.5.5, fastutil is split into two jars for convenience:
fastutil-core.jar
contains data structures based on integers, longs, doubles, and objects;
fastutil.jar
is the classic distribution, containing all classes.
โปรดทราบว่าคลาสหลักจะถูกทำซ้ำใน jar มาตรฐาน ดังนั้นหากคุณขึ้นอยู่กับทั้งสองคลาส (เช่น เนื่องจากการขึ้นต่อกันแบบสกรรมกริยา) คุณควรแยก core jar ออก
เวอร์ชันแยกก่อนหน้านี้จะมีคลาสที่แตกต่างกันใน jar ที่แตกต่างกัน แต่การจัดการการขึ้นต่อกันที่สมเหตุสมผลกลับกลายเป็นว่าเป็นไปไม่ได้
คุณยังสามารถสร้าง fastutil jar ขนาดเล็กที่กำหนดเองได้ (ซึ่งคุณสามารถใส่ใน repo, maven repo ในเครื่อง ฯลฯ) โดยใช้เชลล์สคริปต์ find-deps.sh
มีข้อกำหนดเบื้องต้นเล็กน้อย เนื่องจากต้องใช้เครื่องมือ jdeps
เท่านั้น (มาพร้อมกับ JDK 8) สามารถใช้เพื่อระบุคลาส fastutil ทั้งหมดที่โปรเจ็กต์ของคุณใช้ และสร้าง jar ย่อขนาดที่มีเฉพาะคลาสที่จำเป็นเท่านั้น
ขั้นแรก คุณต้อง make sources
เพื่อรับซอร์ส Java จริง หลังจากนั้น ant jar
จะสร้างไฟล์ jar ไฟล์เดียว ant javadoc
จะสร้างเอกสาร API ant junit
จะทำการทดสอบหน่วย
If you want to obtain the three jars above, you have to run the script split.sh
, and then ant osgi-rest
.
The Java sources are generated using a C preprocessor. สคริปต์ gencsource.sh
อ่านในไฟล์ไดรเวอร์ นั่นคือซอร์ส Java ที่ใช้สัญลักษณ์ที่กำหนดโดยโปรเซสเซอร์ล่วงหน้าและการคอมไพล์แบบมีเงื่อนไขบางส่วน และสร้างซอร์ส C (ปลอม) ซึ่งรวมถึงโค้ดไดรเวอร์และคำจำกัดความบางอย่างที่ปรับแต่งสภาพแวดล้อม .