Java Collection Framework ประกอบด้วยอินเทอร์เฟซจำนวนมากซึ่งหนึ่งในนั้นคือ Set Interface บทความนี้จะให้คำแนะนำโดยละเอียดเกี่ยวกับชุดใน . ต่อไปนี้เป็นคำแนะนำที่จะกล่าวถึงในบทความนี้:
ตั้งค่าใน Java
กำหนดเป็นชุดขององค์ประกอบที่ไม่เรียงลำดับซึ่งไม่สามารถจัดเก็บค่าที่ซ้ำกันได้ มันขยายคอลเลกชันและทำให้วิธีการทั้งหมดในไฟล์ มีอยู่ในอินเทอร์เฟซ Set ดำเนินการโดย HashSet, LinkedHashSet หรือ TreeSort
วิธีการคอมไพล์ใน java
การใช้งานแต่ละอย่างจะทำงานแตกต่างกันไปในขณะที่ทำซ้ำชุดส่วนใหญ่เกี่ยวกับลำดับขององค์ประกอบและเวลาที่ใช้ในการแทรกและในการเข้าถึงองค์ประกอบ
- Hash Set ทำ ไม่รับประกันใด ๆ เกี่ยวกับลำดับขององค์ประกอบในขณะที่ทำซ้ำชุด
- LinkedHashSet ในทางกลับกันให้การรับประกันเกี่ยวกับลำดับขององค์ประกอบในขณะที่ทำซ้ำ
- ทรีเซ็ต ให้การรับประกัน แต่ชุดจะเรียงลำดับตามลำดับธรรมชาติหรือตามการใช้งานตัวเปรียบเทียบเฉพาะ
จะสร้างชุดได้อย่างไร?
รหัสต่อไปนี้กำหนดวิธีการสร้างชุดใหม่:
ตั้งค่า num = HashSet ใหม่ ()
เราได้ใช้ ยาสามัญ เพื่อประกาศชุดของประเภทจำนวนเต็ม
ตั้งค่าวิธีการใน Java:
เราสามารถดำเนินการได้หลายอย่างในชุดดังต่อไปนี้:
เพิ่มวิธีการ
วิธีการเพิ่มจะแทรกองค์ประกอบลงในไฟล์ . ในโค้ดด้านล่างเราใส่ชุดชื่อ
ตั้งค่า strName = HashSet () strName.add ('John') strName.add ('Doe') System.out.println (strName) ใหม่
เอาท์พุต:
[จอห์นโด]
ลบวิธีการ
วิธีนี้จะลบองค์ประกอบที่ระบุออกจากชุด
import java.util. * public class Main {public static void main (String args []) {// การสร้าง Empty Set Set set = new HashSet () // การเพิ่มอิลิเมนต์ให้กับ set set.add ('John') set .add ('Doe') // แสดงชุด System.out.println ('Set:' + set) // การลบองค์ประกอบ“ Doe” โดยใช้วิธี remove () set.remove ('Doe') // การแสดง แก้ไขชุด System.out.println ('Set:' + set)}}
เอาท์พุต:
ชุด: [John, Doe]
ไปจัดเรียง c ++
ชุด: [John]
เป็นวิธีที่ว่างเปล่า
วิธีนี้จะตรวจสอบว่าไฟล์ ว่างเปล่าไม่ได้ มันจะคืนค่าจริงถ้าชุดว่างและเป็นเท็จถ้าเป็นอย่างอื่น
import java.io. * import java.util. * public class Main {public static void main (String args []) {Set javaSet = new HashSet () // การเพิ่มอิลิเมนต์ลงใน Set javaSet.add ('John') javaSet .add ('Doe') // แสดงชุด System.out.println ('Set:' + javaSet) // ตรวจสอบว่าชุดว่างหรือไม่ System.out.println ('Empty Set:' + javaSet.isEmpty () ) // การล้างชุดโดยใช้เมธอด clear () javaSet.clear () // การตรวจสอบว่าชุดนั้นว่างเปล่า System.out.println ('Empty Set:' + javaSet.isEmpty ())}}
เอาท์พุต:
ชุด: [John, Doe]
ชุดว่าง: เท็จ
ชุดว่าง: จริง
ขนาดวิธี
ขนาด () วิธีการคืนค่าขนาดของชุดเช่นจำนวนองค์ประกอบที่มีอยู่ในชุด
นำเข้า java.util * คลาสสาธารณะ Main {public static void main (String args []) {// การสร้างชุด Set set = new HashSet () set.add ('John') set.add ('Doe') ระบบ .out.println ('Set:' + set) // การแสดงขนาดของ System.out.println ที่ส่ง ('ขนาดของชุด:' + set.size ())}}
เอาท์พุต:
ชุด: [John, Doe]
ขนาดของชุด: 2
วนซ้ำชุด
เราสามารถทำซ้ำองค์ประกอบทั้งหมดที่มีอยู่ในชุดได้โดยวิธีการต่อไปนี้:
import java.util. * import java.util.HashSet public class Main {public static void main (String args []) {// การสร้าง HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // การแสดงชุด System.out.println ('HashSet:' + javaSet) // การสร้างตัววนซ้ำ Iterator itr = javaSet.iterator () // การแสดงค่าหลังจากวนซ้ำ System.out.println (' ค่าตัวทำซ้ำ: ') ในขณะที่ (itr.hasNext ()) {System.out.println (itr.next ())}}}
เอาท์พุต:
HashSet: [John, Doe]
ค่า Iterator:
จอห์น
ทำ
ค้นหาในชุด
กองและกองใน java
เราใช้วิธีการมี () เพื่อตรวจสอบว่าชุดนั้นมีองค์ประกอบที่ระบุหรือไม่ ส่งคืนค่าจริงหากพบองค์ประกอบและเป็นเท็จ
import java.io. * import java.util.HashSet public class Main {public static void main (String args []) {// การสร้าง HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // การแสดง HashSet System.out.println ('HashSet:' + javaSet) // การตรวจหา“ John” ในชุด System.out.println ('John in set:' + javaSet.contains ( 'John')) // กำลังตรวจหา 'Hazel' ในชุด System.out.println ('Hazel in set:' + javaSet.contains ('Hazel'))}}
เอาท์พุต:
HashSet: [John, Doe]
จอห์นในชุด: จริง
เฮเซลในชุด: เท็จ
การทำงานพื้นฐานบนชุดใน Java
- สหภาพ: ในการเพิ่มชุดหนึ่งไปยังอีกชุดหนึ่งเราใช้การดำเนินการ Union
- ทางแยก: ในการรักษาค่าทั่วไปจากทั้งสองชุดเราใช้การดำเนินการจุดตัด
- ความแตกต่าง: ในการลบค่าของชุดหนึ่งออกจากอีกชุดหนึ่งจะใช้การดำเนินการที่แตกต่างกัน
ตัวอย่าง
นำเข้า java.util * คลาสสาธารณะ Main {public static void main (String args []) {Set d = new HashSet () d.addAll (Arrays.asList (new Integer [] {3, 2, 1, 9, 6 , 4, 0})) Set e = new HashSet () e.addAll (Arrays.asList (new Integer [] {3, 1, 9, 5, 2, 0, 7,})) // Union Operation Set union = new HashSet (d) union.addAll (e) System.out.println ('Union:' + union) // จุดตัดการทำงานของ Intersection = จุดตัด HashSet (d) ใหม่ retainAll (e) System.out.println (' จุดตัด: '+ จุดตัด) // ความแตกต่างของชุดการดำเนินการความแตกต่าง = HashSet ใหม่ (d) difference.removeAll (e) System.out.println (' ความแตกต่าง: '+ ความแตกต่าง)}}
เอาท์พุต:
สหภาพ: [0, 1, 2, 3, 4, 5, 6, 7, 9]
ทางแยก: [0, 1, 2, 3, 9]
ความแตกต่าง: [4, 6]
วิธีการและการดำเนินการที่กล่าวถึงในวิธีการนี้ทำให้ชุดอินเตอร์เฟสเป็นองค์ประกอบและมีประสิทธิภาพตามธรรมชาติ
ดังนั้นเราจึงมาถึงตอนท้ายของบทความนี้เกี่ยวกับ 'Sets in Java' หากคุณต้องการเรียนรู้เพิ่มเติมโปรดดูไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ หลักสูตรการฝึกอบรมและการรับรอง Java J2EE และ SOA ของ Edureka ได้รับการออกแบบมาเพื่อฝึกอบรมคุณสำหรับแนวคิด Java ทั้งหลักและขั้นสูงพร้อมกับกรอบงาน Java ต่างๆเช่น Hibernate & Spring
มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบทความ 'sets in java' แล้วเราจะติดต่อกลับโดยเร็วที่สุด