java判断字符串是否为空的方法是什么?

Python017

java判断字符串是否为空的方法是什么?,第1张

以下是 Java 判断字符串是否为空的三种方法.\x0d\x0a\x0d\x0a方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低.\x0d\x0a1:if(s == null || s.equals(""))\x0d\x0a方法二: 比较字符串长度, 效率高, 是我知道的最好一个方法.\x0d\x0a2:if(s == null || s.length() 回答于 2022-11-16

在Java中,一个类为空的判断是常用的功能。但是各种类的空判断却不一样

当一个方法返回的是一个Object时,应使用==null来判断是否为空,例如在Servlet中的session判断用户是否登录可以用如下的代码

if (session.getAttribute("LoginUser")==null){

.............

}

但是如果是一个String类型的变量,或者某一个方法返回的是String类型的结果。其判断为空的方式又不一样了。需要使用String类中的equals方法。例如在JSP中获取URL中的参数,为保险起见,可以先判断这个参数是否为空,不空再获取。如果直接获取,一旦这个参数没有,www.linuxidc.com 会造成空指向异常。代码如下

if (request.getParameter("id").toString().equals(null)){

out.println("未提供参数")

}else{

String id=request.getParameter("id").toString()

out.println(id)

}

假设页面地址为 http://localhost/test.jsp

如果不加判断 直接使用

String id=request.getParameter("id").toString()

out.println(id)

会造成空指向异常,而使用了判断后,这种情况下不报错,在页面上显示“未提供参数”。如果地址栏输入的是http://localhost/test.jsp?id=123

则页面输出“123”

另外在字符串的“空”验证时还要注意一种情况,那就是“”空。

如果假想Java中有指针的概念的话,String a为null空,则表示变量没有指针去映射它;而String a为“”空,则表示该字符串有指针映射,但是映射到的内容为空。

先把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]