java计算大对象工具

java计算大对象工具


分析对象的大小方法,本文说最简单的。去下载lucene-core-8.3.1.jar。注意最好就下这个版本的 因为不同的版本函数用法不一样把这个包放到项目的classpath里,参考如下的代码来输出对象大小

    List<InfoModel> objectList=InfoModel.findAll();
    long size= RamUsageEstimator.sizeOfCollection(objectList);
    System.out.println("集合的大小"+size);
    
    Map<String,Object> map= new HashMap();
    map.put("zhangsan", new JVMTest());
    System.out.println("map的大小"+RamUsageEstimator.sizeOfMap(map));

    String str="1234566789";
    System.out.println("字符串的大小"+RamUsageEstimator.sizeOf(str));

    System.out.println("对象的大小"+RamUsageEstimator.sizeOfObject(new KafkaInfoModel()));

    byte [] b4 = new byte[7 * 1024 * 1024];
    System.out.println("字节数组的大小"+RamUsageEstimator.sizeOf(b4));

运行的结果可以参考如下

    集合的大小7810704
    map的大小392
    字符串的大小64
    对象的大小256
    字节数组的大小7340048
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值