Bitset ใน Java: สิ่งที่คุณต้องรู้เกี่ยวกับ Bitset Methods ใน Java



บทความนี้จะแนะนำคุณเกี่ยวกับ Bitsets ใน Java โดยละเอียดและแนะนำวิธีการ Bitset ที่แตกต่างกันพร้อมตัวอย่างที่เกี่ยวข้อง

เป็นหนึ่งในใบรับรองที่ได้รับการดูแลมากที่สุดสำหรับโปรแกรมเมอร์ เหตุผลหลักคือ Java มีความยืดหยุ่นสูงและคุณสมบัติที่แตกต่างกันเพื่อลดความซับซ้อนของงานต่างๆ บทความนี้จะแนะนำให้คุณรู้จักกับคุณสมบัติอย่างหนึ่งนั่นคือ ‘ Bitsets ใน Java ‘. นี่คือคำแนะนำบทความนี้จะมุ่งเน้นไปที่:

เริ่มต้นด้วยหัวข้อสนทนาแรกจากนั้น





Bitsets ใน Java คืออะไร?

บิตเซ็ตแสดงลำดับขนาดคงที่ของ N บิตที่มีค่าเป็นศูนย์หรือหนึ่ง ค่าศูนย์หมายถึงเป็นเท็จหรือไม่ได้ตั้งค่า ค่าหนึ่งหมายถึงจริงหรือตั้ง ขนาดบิตเซ็ตได้รับการแก้ไขในเวลาคอมไพล์Bitset เป็นคลาสที่กำหนดไว้ในแพ็คเกจ java.util เป็นอาร์เรย์ชนิดพิเศษที่เก็บค่าบิต มันใช้เวกเตอร์ของบิต ขนาดของมันจะโตขึ้นโดยอัตโนมัติเมื่อต้องการบิตมากขึ้น

คลาสนี้จัดเตรียมคอนสตรัคเตอร์สองประเภทให้เราสร้างบิตเซ็ตจากจำนวนเต็มและจากสตริง สองคนนั้นคือ:



  • บิตเซ็ต (): เป็นตัวสร้างที่ไม่มีอาร์กิวเมนต์เพื่อสร้างวัตถุเริ่มต้น
  • Bitset (ขนาด int): เป็นตัวสร้างหนึ่งตัวที่มีอาร์กิวเมนต์จำนวนเต็มเพื่อสร้างอินสแตนซ์ของคลาสบิตเซ็ตที่มีขนาดเริ่มต้นของอาร์กิวเมนต์จำนวนเต็มแทนค่า no ของบิต

ตัวอย่างเช่น:

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetJavaExample {public static void main (String args []) {int n = 8 BitSet p = new BitSet (n) สำหรับ (int i = 0i



ตอนนี้ให้เราก้าวต่อไปและดูหัวข้อการสนทนาถัดไปในบทความเรื่อง Bits ใน Java นี้

วิธีการและคำอธิบายของ BITSET Java

Bitset และ () วิธีการ

วิธีนี้ใช้เพื่อดำเนินการเชิงตรรกะ AND ของบิตเซ็ตเป้าหมายด้วยอาร์กิวเมนต์ที่ระบุ ค่าของ set จะเป็นจริงเท่านั้นและเฉพาะในกรณีที่ทั้งสองบิตเซ็ตเริ่มต้นและชุดบิตที่เกี่ยวข้องมีค่าจริง

ไวยากรณ์: โมฆะสาธารณะและ (ชุด BitSet)

ตัวอย่าง:

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetAndExample2 {public static void main (String [] args) {// สร้าง 2 bitsets BitSet bitset1 = new BitSet () BitSet bitset2 = new BitSet () // กำหนดค่าให้กับ bitset1 bitset1.set ( 1) bitset1.set (2) bitset1.set (3) bitset1.set (6) bitset1.set (7) // กำหนดค่าให้กับ bitset2 bitset2.set (10) bitset2.set (20) bitset2.set (30) bitset2.set (40) bitset2.set (60) // พิมพ์ชุด System.out.println ('bitset1:' + bitset1) System.out.println ('bitset2:' + bitset2) // ดำเนินการและดำเนินการระหว่างสอง บิตเซ็ต bitset1.and (bitset2) // พิมพ์ bitset1 System.out.println ใหม่ ('result bitset:' + bitset1)}}

เอาท์พุต:

Bitset andNot () วิธีการ

วิธีนี้ใช้เพื่อล้างบิตทั้งหมดในบิตเซ็ตที่มีการตั้งค่าบิตที่สอดคล้องกันในบิตเซ็ตที่ระบุไว้แล้ว

บทเรียน sql ของฉันสำหรับผู้เริ่มต้น

ไวยากรณ์ - โมฆะสาธารณะ andNot (ชุด BitSet)

ตัวอย่าง:

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetAndNotExample2 {public static void main (String [] args) {BitSet bitset1 = new BitSet () bitset1.set (60) bitset1.set (61) bitset1.set (62) bitset1.set ( 63) bitset1.set (64) // พิมพ์ชุด System.out.println ('bitset1:' + bitset1) // ดำเนินการและไม่ดำเนินการระหว่าง bitset และ null throw ข้อยกเว้น bitset1.andNot (null) // พิมพ์ระบบ bitset1 ใหม่ .out.println ('บิตเซ็ตผลลัพธ์หลัง andNot:' + bitset1)}}

เอาท์พุท: -

Bitset cardinality () วิธีการ

วิธีนี้ใช้เพื่อส่งคืน no.of บิตเท่านั้นซึ่งเป็นจริงในบิตเซ็ต

ไวยากรณ์ - cardinality สาธารณะ int ()

ตัวอย่าง

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetCardinalityExample1 {public static void main (String [] args) {// สร้าง bitset BitSet bitset = new BitSet () // กำหนดค่าให้กับ bitset bitset.set (10) bitset.set (11 ) bitset.set (12) bitset.set (15) bitset.set (16) // พิมพ์ชุด System.out.println ('bitset:' + bitset) int trueBits = bitset.cardinality () // print bitset cardinality System.out.println ('number of true bits:' + trueBits) bitset.clear (2) System.out.println ('bitset after clear index 2:' + bitset) trueBits = bitset.cardinality () // print bitset cardinality หลังจากเคลียร์ดัชนี 2 System.out.println ('จำนวนบิตจริงหลังจากเคลียร์ดัชนี 2:' + trueBits)}}

เอาท์พุท -

BitSet clone () วิธีการ

วิธีนี้ใช้เพื่อสร้างโคลนของบิตเซ็ตให้เป็นบิตเซ็ตใหม่ บิตเซ็ตนี้มีค่าเท่ากับบิตเซ็ตดั้งเดิมในปัจจุบัน บิตเซ็ตโคลนมีค่าจริงเช่นเดียวกับบิตเซ็ตดั้งเดิมที่มี

ไวยากรณ์ - โคลนวัตถุสาธารณะ ()

ตัวอย่าง -

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetCloneExample1 {public static void main (String [] args) {BitSet bitsetOriginal = new BitSet (15) bitsetOriginal.set (12) bitsetOriginal.set (13) bitsetOriginal.set (15) bitsetOriginal.set (16) bitsetOriginal.set (18) // พิมพ์บิตเซ็ตปัจจุบัน System.out.println ('Current bitset:' + bitsetOriginal) // สร้างโคลนของบิตเซ็ตปัจจุบัน Object bitsetClone = bitsetOriginal.clone () // พิมพ์ clone bitset System out.println ('บิตเซ็ตโคลน:' + bitsetClone)}}

เอาต์พุต

BitSet เท่ากับ () วิธีการ

วิธีการของ JAVA bitset ใช้เพื่อเปรียบเทียบอ็อบเจ็กต์ bitset ปัจจุบันกับอ็อบเจ็กต์ bitset ที่ระบุ

ผลลัพธ์ของการเปรียบเทียบบิตเซ็ตจะคืนค่าเป็นจริงถ้าอ็อบเจ็กต์บิตเซ็ตที่ระบุไม่เป็นโมฆะและชุดของอ็อบเจ็กต์บิตเซ็ตควรมีชุดบิตเซ็ตกับค่าจริงเหมือนกันทุกประการกับบิตเซ็ต

ไวยากรณ์ - บูลีนสาธารณะเท่ากับ (วัตถุ obj)

ตัวอย่าง -

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetEqualsExample1 {public static void main (String [] args) {// การสร้าง bitset BitSet bitset = New BitSet (15) Object obj = new BitSet (15) bitset.set (10) bitset.set (11) bitset.set (12) bitset.set (13) bitset.set (14) ((BitSet) obj) .set (10) ((BitSet) obj) .set (11) ((BitSet) obj) set (12) ((BitSet) obj) .set (13) ((BitSet) obj) .set (14) // พิมพ์บิตเซ็ตปัจจุบัน System.out.println ('bitset:' + bitset) System.out.println ( 'object:' + obj) boolean bol = bitset.equals (obj) if (bol == true) {System.out.println ('BitSet เท่ากับ Object ที่ระบุ')} else {System.out.println ('BitSet ไม่เท่ากับ Object ที่ระบุ ')}}}
 

เอาต์พุต

วิธี BitSet isEmpty

วิธีนี้จะคืนค่าจริงหากบิตเซ็ตนี้ไม่มีบิตที่ตั้งค่าเป็นจริง

วิธีเปลี่ยน double เป็น int java

ไวยากรณ์ - บูลีนสาธารณะ isEmpty ()

ตัวอย่าง

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetIsEmptyExample1 {public static void main (String [] args) {BitSet bitset1 = new BitSet (15) BitSet bitset2 = new BitSet (15) bitset1.set (11) bitset1.set (12) bitset1 .set (13) bitset1.set (14) System.out.println ('bitset1:' + bitset1) System.out.println ('bitset2:' + bitset2) // คืนค่าเท็จเนื่องจาก bitset1 ไม่ใช่บูลีนว่างเปล่า b1 = bitset1 .isEmpty () // คืนค่า true เนื่องจาก bitset2 เป็นบูลีนว่าง b2 = bitset2.isEmpty () System.out.println ('bitset1 isEmpty:' + b1) System.out.println ('bitset2 isEmpty:' + b2)}}

เอาต์พุต

ความยาว BitSet () วิธี

วิธีนี้จะส่งคืนขนาดตรรกะของบิตเซ็ตนี้ ความยาวจะสูงถึงดัชนีของบิตชุดสูงสุดบวกหนึ่งจะส่งคืนศูนย์หากชุดบิตไม่มีบิตใด ๆ

ไวยากรณ์ - ความยาว int สาธารณะ ()

โปรแกรม round robin ใน c

ตัวอย่าง-

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetLengthExample1 {public static void main (String [] args) {BitSet bitset1 = new BitSet (15) BitSet bitset2 = new BitSet (15) BitSet bitset3 = new BitSet (15) bitset2.set (11 ) bitset2.set (12) bitset2.set (13) bitset2.set (14) bitset3.set (12) bitset3.set (14) bitset3.set (16) bitset3.set (18) bitset3.set (0) bitset3 .set (2) System.out.println ('bitset1:' + bitset1) System.out.println ('bitset2:' + bitset2) System.out.println ('bitset3:' + bitset3) int length1 = bitset1.length () int length2 = bitset2.length () int length3 = bitset3.length () System.out.println ('length of bitset1:' + length1) System.out.println ('length of bitset2:' + length2) System. out.println ('ความยาวของ bitset3:' + length3)}}

เอาท์พุท -

BitSet ตัดกัน () วิธีการ

วิธีนี้ส่งคืนค่าบูลีนเป็นจริงหรือเท็จโดยพิจารณาจากว่าบิตเซ็ตพารามิเตอร์ได้ตัดกับบิตเซ็ตหรือไม่มันจะคืนค่าจริงถ้าชุด BitSet เป็นจริงในบิตเซ็ตนี้

ไวยากรณ์ - บูลีนสาธารณะตัดกัน (ชุด BitSet)

ตัวอย่าง

นำเข้า java.util.BitSet คลาสสาธารณะ BitSetEntersectsExample2 {public static void main (String [] args) {BitSet bitset = new BitSet (15) bitset.set (11) bitset.set (12) bitset.set (13) bitset.set (14) System.out.println ('bitset:' + bitset) // ดำเนินการและไม่ดำเนินการระหว่าง bitset และ null throw ข้อยกเว้นบูลีน b = bitset.intersects (null) System.out.println ('ผลลัพธ์ที่ตัดกันระหว่างบิตเซ็ตและ null: '+ b)}}

เอาท์พุท -

ด้วยความช่วยเหลือของตัวดำเนินการระดับบิตเราสามารถใช้การดำเนินการต่างๆเช่น AND, OR, NOT, XOR เป็นต้นซึ่งทำงานในขนาดที่เล็กลง สามารถใช้กับจำนวนเต็มประเภทใดก็ได้ ตัวดำเนินการ Bitwise ทำงานในระดับบิต รวดเร็วและต้องการหน่วยความจำน้อย อัลกอริทึมการเข้ารหัสจำนวนมากทำงานในระดับบิตด้วยเช่นกัน

นี่มันพวก เรามาถึงตอนท้ายของบทความนี้เกี่ยวกับ Bits In Java ฉันหวังว่าคุณจะชอบข้อมูลนี้ ตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ การฝึกอบรมและการรับรอง Java J2EE และ SOA ของ Edureka ได้รับการออกแบบมาเพื่อให้คุณเริ่มต้นการเขียนโปรแกรม Java และฝึกอบรมแนวคิด Java ทั้งหลักและขั้นสูงพร้อมกับกรอบงาน Java ต่างๆเช่น Hibernate & Spring

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบล็อกนี้และเราจะติดต่อกลับโดยเร็วที่สุด