BitSet简介
1个回答
展开全部
基本原理和用途
BitSet即位图,是一个很长的“0/1”序列,他的功能就是存储0或者1。
他的这个特点使得在java环境中存储一个数要比直接存一个int节省很多内存空间(一个int占4个字节32位,而用BItSet“存放”一个数只需要1个位)。
比如我们有{1,3,5,7}需要存放,内存中占用了4个int的长度即32*4(bit),如果使用BitSet,就是这个样的[...,1,0,1,0,1,0,1],只需要占用几个bit就可以表示。1个G的内存有8 * 1024 * 1024 * 1024 = 8.58 * 10^9个bit,也就是可以存放85亿+个数。
BitSet的初始大小为1个long的大小,即8字节64个bit。如果我们创建的BitSet指定了位数,系统会根据情况取成64的整数倍个bit,即整数个long的位数,这样做是为了内存补齐。
BitSet适合用于无重复,整数,常用于大数据场景或者日志统计。
参考文章:
Java中BitSet的使用及详解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
亚远景信息科技
2024-12-11 广告
2024-12-11 广告
上海亚远景信息科技有限公司是国内汽车行业咨询及评估领军机构之一,深耕于ASPICE、敏捷SPICE、ISO26262功能安全、ISO21434车辆网络安全领域,拥有20年以上的行业经验,专精于培训、咨询及评估服务,广受全球车厂及供应商赞誉,...
点击进入详情页
本回答由亚远景信息科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询