Java判断字符串是否为空的几种方法
思路:判断某字符串是否为空,为空的标准是str==null或str.length()==0
一.空字符串与null区别
1、类型
null表示的是一个对象的值,而并不是一个字符串。例如声明一个对象的引用,String a = null ;
""表示的是一个空字符串,也就是说它的长度为0。例如声明一个字符串String str = “” ;
2、内存分配
String str = null ; 表示声明一个字符串对象的引用,但指向为null,也就是说还没有指向任何的内存空间;
String str = “”; 表示声明一个字符串类型的引用,其值为""空字符串,这个str引用指向的是空字符串的内存空间;
在java中变量和引用变量是存在栈中(stack),而对象(new产生的)都是存放在堆中(heap):
就如下:
String str = new String("yuge") ;
=左边的是存放在栈中(stack),=右边是存放在堆中(heap)
3、字符串对象与null的值不相等,且内存地址也不相等;
空字符串对象与null的值不相等,且内存地址也不相等;
new String()创建一个字符串对象的默认值为"" (String类型成员变量的初始值为null)
二.Java判断字符串常见方法
方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低:
if(str == null || str .equals(""));
方法二: 比较字符串长度, 效率高, 是我知道的最好一个方法:
if(str == null || str .length() == 0);
方法三: Java SE 6.0 才开始提供的方法, 效率和方法二几乎相等, 但出于兼容性考虑, 推荐使用方法二.
if(str == null || str .isEmpty());
方法四: 这是一种比较直观,简便的方法,而且效率也非常的高,与方法二、三的效率差不多:
if (str == null || str == "");
注意:str == null 是有必要存在的.
如果 String 类型为null, 而去进行 equals(String) 或 length() 等操作会抛出java.lang.NullPointerException.
并且str ==null 的顺序必须出现在前面,不然同样会抛出java.lang.NullPointerException.
三、StringUtils的isBlank与isEmply
1.public static boolean isEmpty(String str)
判断某字符串是否为空,为空的标准是 str==null 或 str.length()==0
2.public static boolean isNotEmpty(String str)
判断某字符串是否非空,等于 !isEmpty(String str)
3.public static boolean isBlank(String str)
判断某字符串是否为空或长度为0或由空白符(whitespace) 构成
4.public static boolean isNotBlank(String str)
判断某字符串是否不为空且长度不为0且不由空白符(whitespace) 构成,等于 !isBlank(String str)
Java判断字符串是否为空的几种方法相关推荐
- Java 判断字符串是否为空的四种方法、优缺点与注意事项
以下是Java 判断字符串是否为空的四种方法: 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||"".equals(s)); 方法二: ...
- java equals 判断空_Java 判断字符串是否为空的三种方法与性能分析
[java中判断字符串是否为数字的三种方法 1>用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = s ...
- java字符串为空抛出异常_Java 判断字符串是否为空的四种方法,及效率比较。
以下是Java 判断字符串是否为空的四种方法: 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||"".equals(s)); 方法二: ...
- java怎么判断字符串是否为空的几种方法(亲测)
StringUtils 第一步使用if(StringUtils.isBlank(a))判断字符串a是否为空,为空执行if语句内打印语句,使用StringUtils,需要添加commons-lang-2 ...
- java判断list是否为空的两种方法
第一种: if(list == null || list.size() == 0){//为空的情况 }else{//不为空的情况 } 第二种: //包:import org.apache.common ...
- java - 判断 字符串是否为空
java - 判断 字符串是否为空 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低.1:if(s == null || s.equals(""));方法二: 比较字符 ...
- Shell中判断字符串是否为数字的6种方法
Shell中判断字符串是否为数字的6种方法 #!/bin/bash # 方法1 a=1234;echo "$a"|[ -n "`sed -n '/^[0-9][0-9]* ...
- 由浅入深CIL系列:5.抛砖引玉:判断string是否为空的四种方法的CIL代码看看效率如何?...
本节将接触几个新的CIL操作码如下 ldc.i4.0 将整数值 0 作为 int32 推送到计算堆栈上 Ceq 比较两个值.如果这两个值相等,则将整数值 1 (int32) ...
- java判断字符串是否为数字的几种方式
一,使用StringUtils工具类: 通过StringUilts工具包进行判断: org.apache.commons.lang3.StringUtils提供了丰富的字符串解析的工具包,其中isNu ...
- c语言如何判断数组不为空,PHP 判断数组是否为空的几种方法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 在php中判断是否为数组很简单,php中利用is_array() 函数就可以快速判断变量是否为数组了.is_array - 检测变量是否是数组Report ...
最新文章
- 使用Python操作excel文件
- 初识html语言,初识 “HTML”
- 开源 java CMS - FreeCMS2.3 会员组管理
- ***惯用的社会工程学手法
- 用“连接”勾勒角色:《死亡搁浅》亡人的设计及其背后的故事谜题
- was java heap space_实战项目中Java heap space错误的解决
- 首批国产特斯拉车主,被“割了韭菜”
- laravel一键安装包
- FCKeditor 2.6.4在ASP.NET中的配置方法
- matlab 模的平方,RSA模重复平方算法小示例
- 随机预言模型和标准模型 -2014-03-24 15:35
- linux shell 端口扫描,shell脚本结合iptables防端口扫描的实现
- Java开发中OnlyOffice、OpenOffice和LibreOffice怎么选?
- linux 蓝牙打印机驱动安装失败,蓝牙驱动安装失败如何解决_蓝牙驱动安装不了怎么处理...
- 【JAVA】java解析HTML代码
- Android 利用广播实现黑名单【指定号码】的短信的拦截 附源码下载链接
- 为什么总学不好PS?300集PS从入门到高级自学教程,全面且系统
- packetdrill 深入理解内核网络协议栈的工具集
- webpack——module、chunk和bundle的区别
- 隔离放大器工作原理及其应用