超难问题:如何判断一个object是否属于byte[]类型?

时间:2021-01-10 11:49:48
请问如何判断一个object是否属于byte[]类型?
例如:
ArrayList tList=new ArrayList();  
byte[] Data;
tList.Add(Data);
如何判断tList.get(0)这个object的类型是否byte[]?

随时在线,解决问题就给分

5 个解决方案

#1


ArrayList tList=new ArrayList();  
byte[] Data=null;
tList.Add(Data);
if(tList.get(0) instanceof byte[]){

} else if(tList.get(0) == null){

}

#2


这也叫超难
... ...

#3


同意楼上的方法
另外可以用isArray和getClass().getComponentType来判断。
Demo 如下:

public class RtType {
byte[] bts = new byte[]{0,1,2};

public void testType(Object objs){

System.out.println("instanceof byte[]?"+(objs instanceof byte[]));
System.out.println("isArray?"+objs.getClass().isArray());
if (objs.getClass().isArray()){
    System.out.println("getClass.getComponentType:"+objs.getClass().getComponentType());
}
}
public static void main(String[] args) {
RtType rt = new RtType();
rt.testType(rt.bts);
}
}

#4


instanceof byte[] 就可以了

#5


感谢 呵呵呵呵呵.我初学java.手上没有参考书 :)

#1


ArrayList tList=new ArrayList();  
byte[] Data=null;
tList.Add(Data);
if(tList.get(0) instanceof byte[]){

} else if(tList.get(0) == null){

}

#2


这也叫超难
... ...

#3


同意楼上的方法
另外可以用isArray和getClass().getComponentType来判断。
Demo 如下:

public class RtType {
byte[] bts = new byte[]{0,1,2};

public void testType(Object objs){

System.out.println("instanceof byte[]?"+(objs instanceof byte[]));
System.out.println("isArray?"+objs.getClass().isArray());
if (objs.getClass().isArray()){
    System.out.println("getClass.getComponentType:"+objs.getClass().getComponentType());
}
}
public static void main(String[] args) {
RtType rt = new RtType();
rt.testType(rt.bts);
}
}

#4


instanceof byte[] 就可以了

#5


感谢 呵呵呵呵呵.我初学java.手上没有参考书 :)