java中isPrimitive()方法和包装类

java中isPrimitive()方法和包装类

一、描述

java.lang.Class.isprimitive()是说:确定指定的Class对象是基本类型,其返回是个boolean值,true代表你指定的这个Class对象是基本类型,false代表这个Class对象不是基本类型。

所以在java.lang.Class.isPrimitive()中:
.isPrimitive()是用来判断是否是基本类型的:

            void.isPrimitive() //true;

.class用来返回该类的Class对象的实例:

            int.class == intclass //基本类型

二、基本类和包装类

基本类型:

 java中所有类总称为Class,基本类型是Class的一个子集。

 基本类型不需要new,例如 int i = new int() i =2;是多余的。

基本类型共有以下这几种:

char
int
byte
short
long
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java,可以通过以下方式判断一个对象的每个字段是否为空: 1. 遍历对象的所有字段,使用反射获取类的所有字段。 2. 对于每个字段,判断其类型是否为Java的基本类型或包装类型,如果是,则使用包装类型的静态方法判断是否为null或者使用基本类型的默认值判断是否为0或false。 3. 对于非基本类型的字段,递归调用判断其内部的字段是否为空。 4. 如果所有字段都为空,则返回true,否则返回false。 下面是一个例子,假设有一个User类,包含了name、age和address三个字段,我们可以使用如下代码判断其是否为空: ```java public static boolean isAllFieldsNull(User user) throws IllegalAccessException { for (Field field : User.class.getDeclaredFields()) { field.setAccessible(true); Object fieldValue = field.get(user); if (fieldValue == null) { return false; } else if (field.getType().isPrimitive()) { if (field.getType().equals(int.class) && (int) fieldValue == 0) { return false; } else if (field.getType().equals(long.class) && (long) fieldValue == 0L) { return false; } else if (field.getType().equals(double.class) && (double) fieldValue == 0.0) { return false; } else if (field.getType().equals(boolean.class) && !(boolean) fieldValue) { return false; } } else if (isAllFieldsNull(fieldValue)) { return false; } } return true; } ``` 注意这里使用了递归调用来判断非基本类型的字段是否为空。同时,还需要注意字段的可访问性,使用setAccessible方法将字段设置为可访问状态。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值