java中的位集类

java中的位集类,java,Java,在阅读java中的位集类时,我遇到了下面的示例。位集类的逻辑和、或&xor与逻辑门逻辑相同吗 有人能给我解释一下在上面的例子中,方法是如何工作的吗?因为当我在oracle文档中读到关于或方法的内容时,它会说: 公共void或(位集) 使用bit set参数对此位集执行逻辑或运算。修改此位集,使其中的位具有值true,当且仅当它已经具有值true或位集参数中的相应位具有值true时 参数:设置-位设置 以下是代码: import java.util.BitSet; public class Bi

在阅读java中的位集类时,我遇到了下面的示例。位集类的逻辑和、或&xor与逻辑门逻辑相同吗

有人能给我解释一下在上面的例子中,方法是如何工作的吗?因为当我在oracle文档中读到关于或方法的内容时,它会说:

公共void或(位集)

使用bit set参数对此位集执行逻辑或运算。修改此位集,使其中的位具有值true,当且仅当它已经具有值true或位集参数中的相应位具有值true时

参数:设置-位设置

以下是代码:

import java.util.BitSet;

public class BitSetDemo {

  public static void main(String args[]) {
     BitSet bits1 = new BitSet(16);
     BitSet bits2 = new BitSet(16);

     // set some bits
     for(int i=0; i<16; i++) {
        if((i%2) == 0) bits1.set(i);
        if((i%5) != 0) bits2.set(i);
     }
     System.out.println("Initial pattern in bits1: ");
     System.out.println(bits1);
     System.out.println("\nInitial pattern in bits2: ");
     System.out.println(bits2);

     // AND bits
     bits2.and(bits1);
     System.out.println("\nbits2 AND bits1: ");
     System.out.println(bits2);

     // OR bits
     bits2.or(bits1);
     System.out.println("\nbits2 OR bits1: ");
     System.out.println(bits2);

     // XOR bits
     bits2.xor(bits1);e
     System.out.println("\nbits2 XOR bits1: ");
     System.out.println(bits2);
  }
}

The Output of above program is

Initial pattern in bits1:
{0, 2, 4, 6, 8, 10, 12, 14}

Initial pattern in bits2:
{1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14}

bits2 AND bits1:
{2, 4, 6, 8, 12, 14}

bits2 OR bits1:
{0, 2, 4, 6, 8, 10, 12, 14}

bits2 XOR bits1:
{}

so in the above example result of or should be {0,1,2,3,4,6,7,8,9,10,11,12,13,14} according to oracle docs instead of {0, 2, 4, 6, 8, 10, 12, 14}. or am I misunderstood the explanation?

Really appreciate the help.
import java.util.BitSet;
公共类BitSetDemo{
公共静态void main(字符串参数[]){
比特集bits1=新的比特集(16);
比特集bits2=新的比特集(16);
//设置一些位

对于(int i=0;i而言,问题在于计算
bits2.或(bits1)
如果已从
调用中修改了
位2
的值,则不要直接在
位2
上调用
以及
异或
,尝试为每个测试使用
位2
的单独副本。

操作期间,位2的值已由e调用
bits2.和(bits1)
。通过调用
bits2.或(bits1)
bits2.xor(bits1)