取出Set中的byte数组的值以及判断byte数组是否为空

本文介绍如何使用Java Set集合存储byte数组,并通过for-each循环和迭代器进行遍历,同时提供判断byte数组是否为空的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.使用两个for(:)语句,具体不懂:的使用的可以查阅我之前的关于Collection的说明

byte[] mbyte={1,2,3,3,4};
        byte[] mbyte2={2,5,7,3,4};
        byte[] mbyte3={1,5,2,4,2};
        Set<byte[]> mbytes=new HashSet();
        mbytes.add(mbyte);
        mbytes.add(mbyte2);
        mbytes.add(mbyte3);
        for(byte[] a:mbytes){//第一层循环取出byte数组
            for(byte b:a){//第二层循环从数组中取出byte的值
                System.out.print(b);
            }
            System.out.println();
        }

2.判断Set中的byte数组是否为空

//判断方法,传递一个byte数组进来,如果为空则返回true.否则返回false
public static boolean isNull(byte[] bs){
        if(bs.length==0||bs==null){//根据byte数组长度为0判断
            return true;
        }
        return false;
    }
//再上一个步骤说的双从循环中判断
for(byte[] a:mbytes){//第一层循环取出byte数组
            if(isNull(a))
            {
            System.out.println("byte数组为空");
            }
        }   

3.网上还有使用迭代器进行取值的(我在网上copy过来的一小段代码)

Set<Object> set = new HashSet<Object>();
Iterator<Object> it = set.iterator();
while(it.hasNext())//判断是否有下一个
it.next()//取出元素

4.还有一个在Set中的byte数组有限情况下取值的办法,这里假如有3个byte数组

byte[] mbyte={1,2,3,3,4};
        byte[] mbyte2={2,5,7,3,4};
        byte[] mbyte3={1,5,2,4,2};
Set<byte[]> mbytes=new HashSet();
        mbytes.add(mbyte);
        mbytes.add(mbyte2);
        mbytes.add(mbyte3);
//首先初始化3个byte数组。后面一定要加上{}
        byte[] bs1={};
        byte[] bs2={};
        byte[] bs3={};
//利用赋值过后的byte数组长度不为0来进行赋值
        for(byte[] bs:mbytes){
            if(bs1.length==0){
                bs1=bs;
            }else if(bs2.length==0)
            {
                bs2=bs;
            }else{
                bs3=bs;
            }

        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值