Java中的Java.util.BitSet类与示例

作者: Arvin Chen 分类: Java 来源: Break易站(www.breakyizhan.com)

BitSet是java.util包中定义的一个类。它创建一个由布尔值表示的数组。

构造函数:

 BitSet类构造函数
    / \ 
 BitSet()BitSet(int no_Of_Bits)
  • BitSet():一个无参数的构造函数,用于创建一个空的BitSet对象。
  • BitSet(int no_Of_Bits):带有整数参数的单构造函数,用于创建BitSet类的实例,初始大小为表示位数的整数参数。
// Java program illustrating Bitset Class constructors.
import java.util.*;
public class GFG
{
    public static void main(String[] args)
    {
        // Constructors of BitSet class
        BitSet bs1 = new BitSet();
        BitSet bs2 = new BitSet(6);

        /* set is BitSet class method
           expalined in next articles */
        bs1.set(0);
        bs1.set(1);
        bs1.set(2);
        bs1.set(4);

        // assign values to bs2
        bs2.set(4);
        bs2.set(6);
        bs2.set(5);
        bs2.set(1);
        bs2.set(2);
        bs2.set(3);

        // Printing the 2 Bitsets
        System.out.println("bs1  : " + bs1);
        System.out.println("bs2  : " + bs2);
    }
}

输出:

bs1:{0,1,2,4}
bs2:{1,2,3,4,5,6}

重点:

  • 阵列的大小是灵活的,可以根据需要增长以容纳额外的位。
  • 由于它是一个数组,索引是基于零的,并且位值只能由非负整数作为索引访问。
  • BitSet的默认值为boolean false,表示形式为0(off)。
  • 调用清除方法会将位值设置为false。
  • BitSet每布尔值使用大约1位。
  • 要访问BitSet中的特定值,get方法将与整数参数一起用作索引。

如果bitset中的数组索引被设置为Negative会发生什么?

该程序将抛出java.lang.NegativeArraySizeException

// Java program illustrating Exception when we access
// out of index in BitSet class.
import java.util.*;

public class GFG
{
    public static void main(String[] args)
    {
        // Constructors of BitSet class
        BitSet bs1 = new BitSet();

        // Negative array size
        BitSet bs2 = new BitSet(-1);

        /* set is BitSet class method
           expalined in next articles */
        // assigning values to bitset 1
        bs1.set(0);
        bs1.set(1);

        // assign values to bs2
        bs2.set(4);
        bs2.set(6);

        System.out.println("bs1  : " + bs1);
        System.out.println("bs2  : " + bs2);
    }
}

输出:

Exception in thread "main" java.lang.NegativeArraySizeException: nbits < 0: -1
    at java.util.BitSet.(BitSet.java:159)
    at GFG.main(NewClass.java:9)
  •   本文标题:Java中的Java.util.BitSet类与示例 - Break易站
    转载请保留页面地址:https://www.breakyizhan.com/java/4576.html
      微信返利机器人
      免费:淘宝,京东,拼多多优惠券
      腾讯,爱奇艺,优酷的VIP视频免费解析,免费看
      即刻扫描二维码,添加微信机器人!

    发表笔记

    电子邮件地址不会被公开。 必填项已用*标注