成都网站建设设计

将想法与焦点和您一起共享

java存在判空代码 java date判空

java怎么判断int是否为空?

先把int类型的数据转换成String类型,然后判断String类型的数据是否为空。

成都创新互联,专注为中小企业提供官网建设、营销型网站制作、响应式网站开发、展示型网站制作、成都做网站等服务,帮助中小企业通过网站体现价值、有效益。帮助企业快速建站、解决网站建设与网站营销推广问题。

示例代码:

int point;

String val=point +""; if("".equals(val)){ // do something...}

PS:int point不是对象,int类型为空时默认为0。

还有方法是:

如果point是int类型,则得到的结果是不可能是null的。 

如果插入一条数据时没有插入给字段,而数据库里默认是null的值的话,可以使用 Integer point= GiftInfo.getPoints(); 

然后判断point是否等于空。 

示例代码:

Integer point= GiftInfo.getPoints();

if(point == null){ // do something...}

PS:GiftInfo.getPoints返回的是Integer类型,Integer类型是包括基本类型的包装类,不给赋值的时候为null。

参考资料

判断int类型是否为空.CSDN博客 [引用时间2017-12-27]

java对象为空的判断

/** 

* 判断对象或对象数组中每一个对象是否为空: 对象为null,字符序列长度为0,集合类、Map为empty 

*  

* @param obj 

* @return 

*/  

public static boolean isNullOrEmpty(Object obj) {  

if (obj == null)  

return true;  

if (obj instanceof CharSequence)  

return ((CharSequence) obj).length() == 0;  

if (obj instanceof Collection)  

return ((Collection) obj).isEmpty();  

if (obj instanceof Map)  

return ((Map) obj).isEmpty();  

if (obj instanceof Object[]) {  

Object[] object = (Object[]) obj;  

if (object.length == 0) {  

return true;  

}  

boolean empty = true;  

for (int i = 0; i  object.length; i++) {  

if (!isNullOrEmpty(object[i])) {  

empty = false;  

break;  

}  

}  

return empty;  

}  

return false;  

}  

应用场景:

读取excel文件,转化为一个二维数组:Object[][] arrays

但是excel中有空行,所以需要过滤Object[][] arrays中的空的一维数组:

Java代码  

/*** 

* 过滤数组中的空元素 

*  

*  

* @param arrays 

* @return 

*/  

public static Object[][] filterEmpty(Object[][] arrays) {  

int sumNotNull = 0;  

/*** 

* 统计非空元素的总个数 

*/  

for (int i = 0; i  arrays.length; i++) {  

Object object = arrays[i];  

if (!ValueWidget.isNullOrEmpty(object)  

!SystemUtil.isNullOrEmpty((Object[]) object)) {// 判断元素是否为空  

sumNotNull = sumNotNull + 1;  

}  

}  

Object[][] filtedObjs = new Object[sumNotNull][];  

int index = 0;  

for (int i = 0; i  arrays.length; i++) {  

Object[] object_tmp = arrays[i];  

if (!ValueWidget.isNullOrEmpty(object_tmp)  

!SystemUtil.isNullOrEmpty((Object[]) object_tmp)) {// 判断元素是否为空  

filtedObjs[index++] = object_tmp;  

}  

}  

return filtedObjs;  

}  

判断对象的所有成员变量是否为空

Java代码  

/*** 

* Determine whether the object's fields are empty 

*  

* @param obj 

* @param isExcludeZero  :true:数值类型的值为0,则当做为空;----false:数值类型的值为0,则不为空 

*  

* @return 

* @throws SecurityException 

* @throws IllegalArgumentException 

* @throws NoSuchFieldException 

* @throws IllegalAccessException 

*/  

public static boolean isNullObject(Object obj, boolean isExcludeZero)  

throws SecurityException, IllegalArgumentException,  

NoSuchFieldException, IllegalAccessException {  

if(ValueWidget.isNullOrEmpty(obj)){//对象本身就为null  

return true;  

}  

ListField fieldList = ReflectHWUtils.getAllFieldList(obj.getClass());  

boolean isNull = true;  

for (int i = 0; i  fieldList.size(); i++) {  

Field f = fieldList.get(i);  

Object propertyValue = null;  

try {  

propertyValue = getObjectValue(obj, f);  

} catch (NoSuchFieldException e) {  

e.printStackTrace();  

}  

if (!ValueWidget.isNullOrEmpty(propertyValue)) {// 字段不为空  

if (propertyValue instanceof Integer) {// 是数字  

if (!((Integer) propertyValue == 0  isExcludeZero)) {  

isNull = false;  

break;  

}  

} else if (propertyValue instanceof Double) {// 是数字  

if (!((Double) propertyValue == 0  isExcludeZero)) {  

isNull = false;  

break;  

}  

}else if (propertyValue instanceof Float) {// 是数字  

if (!((Float) propertyValue == 0  isExcludeZero)) {  

isNull = false;  

break;  

}  

}else if (propertyValue instanceof Short) {// 是数字  

if (!((Short) propertyValue == 0  isExcludeZero)) {  

isNull = false;  

break;  

}  

}else {  

isNull = false;  

break;  

}  

}  

}  

return isNull;  

}  

测试:

Java代码  

@Test  

public void test_isNullObject() throws SecurityException,  

IllegalArgumentException, NoSuchFieldException,  

IllegalAccessException {  

Person2 p = new Person2();  

Assert.assertEquals(true, ReflectHWUtils.isNullObject(p, true));  

Assert.assertEquals(false, ReflectHWUtils.isNullObject(p, false));  

p.setAddress("beijing");  

Assert.assertEquals(false, ReflectHWUtils.isNullObject(p, true));  

Assert.assertEquals(false, ReflectHWUtils.isNullObject(p, false));  

p.setAddress(null);  

p.setId(0);  

Assert.assertEquals(true, ReflectHWUtils.isNullObject(p, true));  

Assert.assertEquals(false, ReflectHWUtils.isNullObject(p, false));  

}  

Person2 源代码(省略getter,setter方法):

Java代码  

import java.sql.Timestamp;  

public class Person2 {  

private int id;  

private int age;  

private double weight;  

private String personName;  

private Timestamp birthdate;  

public String identitify;  

protected String address;  

String phone;  

}

java判断文件为空

看了下代码,有2个逻辑错误

判断文件是否为空,使用readLine方法,如果返回null,表示为空

ready()表示文件是否准备完毕

if(!br.ready()) ////////文件为空 

文件读入流后,一直处于准备中,因此程序不会进入if(!br.ready())语句

不清楚你的逻辑,只能部分修改你的代码,希望有帮助,代码和注释如下:

StringBuffer sb = new StringBuffer();

br = new BufferedReader(new FileReader(""));

while ((lineStr = br.readLine()) != null) { // 这里是第一次去,如:第1行

int i = 0;

while (i = lineStr.length() - 1) {

ch = lineStr.charAt(i);

if (ch == dyh.charAt(0)) {

sb.append(ch);

while (ischaracter) {

if (i == lineStr.length() - 1) {

}

if ((lineStr = br.readLine()) != null) { // 文件不为空:这个时候读取了下一行,针对上去是第2行

if (lineStr.trim().length() == 0) { // 去除空格后,长度等于0,表示这是个一空行

// 这是一个空行,加入你的逻辑

} else {

// 这行有内容,加入你的逻辑

}

} else {

// 这里是文件为空

// 加入你的逻辑

}

}

}

}

}


网页名称:java存在判空代码 java date判空
网页地址:http://chengdu.cdxwcx.cn/article/dosgchp.html