Java 中的 BitSet 类方法,带示例| Set 3
原文:https://www . geesforgeks . org/bitset-class-methods-Java-examples-set-3/
BitSet class methods in Set 3.
/ / | | | \ \
and notand flip isEmpty equal get intersect
BitSet 类方法解释如下:
-
和/notand:java.util.BitSet . and()和Java . util . bitset . notand()方法是一个 Java . util . bitset 类方法。 。and()方法执行位集(目标)的逻辑与运算,位集作为参数传递。当且仅当两个被操作的位都为真时,这将返回一个位(置位)。 。notand()方法–使用此方法
```java Syntax: public void and(BitSet bitset) or public void andNot(BitSet bitste) Parameters: bitset - set to perform the operation
```
清除所有设置了相应位的位 2. equal:T3】Java . util . BitSet . equal()方法在比较两个 bitset 时发挥作用。它是通过比较一个物体和其他物体来实现的。
```java Syntax: public boolean equals(Object o) Parameters: o - the object to compare with Overrides: equals in class Object Return: if object are same then true; otherwise false
```
-
get() : java.util.BitSet.get() method creates a new BitSet with elements from the given Bitset having positions from from_Index (inclusive) to_Index(exclusive).
```java Syntax: public BitSet get(int from_Index, int to_Index) Parameters: from_Index - index of the first bit of given BitSet to include to_Index - index after the last bit of the BitSet to include Throws: IndexOutOfBoundsException - if from_Index is negative, or to_Index is negative, or from_Index is larger than to_Index
```
解释 and(),notand(),equal(),get()方法使用的 Java 代码。
```java // Java program explaining BitSet class methods // and(), notand(), equal(), get() import java.util.*; public class GFG { public static void main(String[] args) { BitSet bs1 = new BitSet(); BitSet bs2 = new BitSet();
// assign values to bs1 using set() bs1.set(7); bs1.set(1); bs1.set(2); bs1.set(4); bs1.set(3); bs1.set(6);
// assign values to bs2 bs2.set(4); bs2.set(6); bs2.set(3); bs2.set(9); bs2.set(2);
// Printing the Bitsets System.out.println("bs1 : " + bs1); System.out.println("bs2 : " + bs2);
// use of get() to get index 3 to 6 of bs1 System.out.println("\nUse of get() on bs1 : " + bs1.get(1,4));
// use of get() to get index 1 to 4 of bs2 System.out.println("Use of get() on bs2 : " + bs2.get(1,4));
// perform not operation in b/w the sets bs1.andNot(bs2); System.out.println("\nNot b/w bs1 and bs2 : " + bs1);
// perform and operation between two bitsets bs1.and(bs2); System.out.println("And b/w bs1 and bs2 : " + bs1);
// equal() method to compare the bs1 and bs2 if (bs1.equals(bs2)) System.out.println("\nUsing equal method : Equal"); else System.out.println("\nUsing equal method : Not Equal"); } } ```
输出:
```java bs1 : {1, 2, 3, 4, 6, 7} bs2 : {2, 3, 4, 6, 9}
Use of get() on bs1 : {0, 1, 2} Use of get() on bs2 : {1, 2}
Not b/w bs1 and bs2 : {1, 7} And b/w bs1 and bs2 : {}
Using equal method : Not Equal
```
-
flip():Java . util . bitset . flip(from_Index,to_Index) 方法将从给定的 from _ Index(包含)到指定的 to_Index(不包含)的每个位设置为当前值的补码。
```java Syntax: public void flip(int from_Index, int to_Index) Parameters: from_Index - index of the first bit of the given BitSet to flip to_Index - index after the last bit of the given BitSet to flip Throws: IndexOutOfBoundsException - if from_Index is negative, or to_Index is negative, or from_Index is larger than to_Index
```
-
intersect():Java . util . BitSet . intersect()如果目标 BitSet 和给定 BitSet 中的位都被设置,则方法返回 true。
```java Syntax: public boolean intersects(BitSet set) Parameters: set - BitSet to intersect with Returns: true if the given BitSet intersects the target BitSet
```
-
isEmpty() : java.util.BitSet.isEmpty() method whether there is any bit, that is set to true or not in the given Bitset.
```java Syntax: public boolean isEmpty() Return: boolean indicating whether the given BitSet is empty
```
解释 intersect(),isEmpty(),flip()方法使用的 Java 代码。
```java // Java program explaining BitSet class methods // intersect(), isEmpty(), flip() methods import java.util.*; public class NewClass { public static void main(String[] args) { BitSet bs1 = new BitSet(); BitSet bs2 = new BitSet();
// assign values to bs1 using set() bs1.set(7); bs1.set(1); bs1.set(2); bs1.set(4); bs1.set(3); bs1.set(6);
// assign values to bs2 bs2.set(4); bs2.set(6); bs2.set(3); bs2.set(9); bs2.set(2);
// Printing the Bitsets System.out.println("bs1 : " + bs1); System.out.println("bs2 : " + bs2); System.out.println("");
// use of intersect() to check if the bitsets // intersects System.out.println("Using intersect() : " + bs2.intersects(bs1));
// use of flip() from_index - 1 to_index - 5 bs1.flip(1,5); System.out.println("\nbs1 using flip : " + bs1);
// use of flip() from_index - 2 to_index - 4 bs2.flip(2,4); System.out.println("bs2 using flip : " + bs2); System.out.println("");
// use of isEmpty() to check if bitsets are empty System.out.println("Use of isEmpty() : " + bs1.isEmpty()); System.out.println("Use of isEmpty() : " + bs2.isEmpty()); } } ```
输出:
```java bs1 : {1, 2, 3, 4, 6, 7} bs2 : {2, 3, 4, 6, 9}
Using intersect() : true
bs1 using flip : {6, 7} bs2 using flip : {4, 6, 9}
Use of isEmpty() : false Use of isEmpty() : false
```
参考文献: https://docs . Oracle . com/javase/7/docs/API/Java/util/bitset . html
本文由 莫希特·古普塔 供稿。如果你喜欢 GeeksforGeeks 并想投稿,你也可以使用contribute.geeksforgeeks.org写一篇文章或者把你的文章邮寄到 contribute@geeksforgeeks.org。看到你的文章出现在极客博客主页上,帮助其他极客。
如果你发现任何不正确的地方,或者你想分享更多关于上面讨论的话题的信息,请写评论。
版权属于:月萌API www.moonapi.com,转载请注明出处