Java将Object转换为数组的代码

 更新时间:2022年09月07日 08:19:11   作者:m0_67401606  
这篇文章主要介绍了Java将Object转换为数组的情况,今天在使用一个别人写的工具类,这个工具类,主要是判空操作,包括集合、数组、Map等对象是否为空的操作,需要的朋友可以参考下

今天在使用一个别人写的工具类,这个工具类,主要是判空操作,包括集合、数组、Map等对象是否为空的操作。

下面展示了一部分代码:

public static boolean isEmpty(Object object) {
    if(object == null){
         return true;
     }
     //数组判空
	 if (object.getClass().isArray()) {
	       Object[] obj = (Object[])object;
           return obj.length == 0;
	 } 
}

在外部,我传进来一个数组后,可以看到直接强转为数组。

我测试了下,转换异常。

后来我自己封装了下,正常的操作应该是这样的:

public static boolean isEmpty(Object object) {
    if(object == null){
         return true;
     }
     //数组判空
	 if (object.getClass().isArray()) {
	       int len = Array.getLength(object);
	    	Object[] obj = new Object[len];
	    	for(int i = 0; i < len; i++) {
	    		obj[i] = Array.get(obj, i);
	    	}
	        return obj.length == 0;
	 } 

}

最后测试通过。

补充:JAVA将Object对象转byte数组

/**
     * 将Object对象转byte数组
     * @param obj byte数组的object对象
     * @return
     */
    public static byte[] toByteArray(Object obj) {
        byte[] bytes = null;
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        try {
            ObjectOutputStream oos = new ObjectOutputStream(bos);
            oos.writeObject(obj);
            oos.flush();
            bytes = bos.toByteArray ();
            oos.close();
            bos.close();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
        return bytes;
    }

到此这篇关于Java将Object转换为数组的情况的文章就介绍到这了,更多相关Java Object转换数组内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解Mybatis框架SQL防注入指南

    详解Mybatis框架SQL防注入指南

    这篇文章主要介绍了详解Mybatis框架SQL防注入指南,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • JavaWeb Spring依赖注入深入学习

    JavaWeb Spring依赖注入深入学习

    这篇文章主要为大家详细介绍了JavaWeb Spring依赖注入,深入学习Spring依赖注入,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • Spring Aware标记接口使用案例解析

    Spring Aware标记接口使用案例解析

    这篇文章主要介绍了Spring Aware标记接口使用案例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Java获取当前时间戳案例详解

    Java获取当前时间戳案例详解

    这篇文章主要介绍了Java获取当前时间戳案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • Java Swing组件布局管理器之FlowLayout(流式布局)入门教程

    Java Swing组件布局管理器之FlowLayout(流式布局)入门教程

    这篇文章主要介绍了Java Swing组件布局管理器之FlowLayout(流式布局),结合实例形式分析了Swing组件布局管理器FlowLayout流式布局的常用方法及相关使用技巧,需要的朋友可以参考下
    2017-11-11
  • Java使用NIO优化IO实现文件上传下载功能

    Java使用NIO优化IO实现文件上传下载功能

    IO 是基于流来读取的,而NIO则是基于块读取,面向流 的 I/O 系统一次一个字节地处理数据,这篇文章主要介绍了Java使用NIO优化IO实现文件上传下载功能,需要的朋友可以参考下
    2022-07-07
  • SpringBoot整合ElasticSearch实践

    SpringBoot整合ElasticSearch实践

    本篇文章主要介绍了SpringBoot整合ElasticSearch实践,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • 带你了解Java数据结构和算法之队列

    带你了解Java数据结构和算法之队列

    这篇文章主要为大家介绍了Java数据结构和算法之队列,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • Java 使用Thumbnails对大图片压缩

    Java 使用Thumbnails对大图片压缩

    这篇文章主要介绍了Java 使用Thumbnails对大图片压缩,帮助大家更好的利用Java处理图片,感兴趣的朋友可以了解下
    2020-11-11
  • Netty网络编程实战之开发聊天室功能

    Netty网络编程实战之开发聊天室功能

    这篇文章主要为大家详细介绍了如何利用Netty实现聊天室功能,文中的示例代码讲解详细,对我们学习Netty网络编程有一定帮助,需要的可以参考一下
    2022-10-10

最新评论