问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java 字符串为null 如何判断

发布网友 发布时间:2022-04-20 19:41

我来回答

6个回答

热心网友 时间:2022-04-11 18:35

定义 String str; 

判断字符串是否空涉及两个层次:

1、是首先判断字符串变量的引用是否为空,即空对象的概念,用null来判断,可以用if(str==null) 判断 str是否为空;(注意不能用equals(null),在参数为null情况下,返回值永远是false);

2、是在不为空对象的情况下,在判断字符串对象是否为空串,即长度为0.用length()==0。 关键是搞清楚字符串对象为空和空字符串有区别。

拓展内容

Java空字符串与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("abc") ; 

参考资料:java官方网站

Java中字符串的常用方法

热心网友 时间:2022-04-11 19:53

判断一个字符串str不为空的方法有:

1、str == null;

2、str.isEmpty()

str == null 是有必要存在的。

如果 String 类型为null, 而去进行 equals(String) 或 length() 等操作会出现java.lang.NullPointerException。

并且str==null 的顺序必须出现在前面,不然同样会抛出java.lang.NullPointerException。

扩展资料:

字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“a”,s[10]="j",而字符串的零位正是它的长度,如s[0]=10(※上述功能Ansistring没有。),这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入数组。

参考资料:java基础-百度百科

热心网友 时间:2022-04-11 21:28

字符串为空,就两种情况:要么为null,要么是空串-"";

其中需要注意的就是当字符串为null时,使用字符串的方法 -> .length()和.isEmpty()时会抛出NullPointException,所以需要把==null的判断代码写在前面。

Java空字符串与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("abc") ;

ps:=左边的是存放在栈中(stack),=右边是存放在堆中(heap)。

3、示例程序:

public class String_Demo01 {    /**
* @param args     */
public static void main(String[] args) {
String str1 = new String() ;
String str2 = null ;
String str3 = "" ;
System.out.println(str1==str2);                //内存地址的比较,返回false
System.out.println(str1.equals(str2));         //值的比较,返回false
System.out.println(str2==str3);                //内存地址的比较,返回false
System.out.println(str3.equals(str2));         //值的比较,返回false
System.out.println(str1==str3);                //内存地址的比较,返回false
System.out.println(str1.equals(str3));         //值的比较,返回true    }

通过如上的程序可以得出如下结论:

热心网友 时间:2022-04-11 23:19

我觉得应该搞清楚字符串对象和字符串变量这两个概念的区别。字符串变量保存一个字符串对象的引用。判断字符串是否空涉及两个层次:1、是首先判断字符串变量的引用是否为空,即空对象的概念,用null来判断,可以用== null;(注意不能用equals(null),在参数为null情况下,返回值永远是false);2、是在不为空对象的情况下,在判断字符串对象是否为空串,即长度为0.用length()==0。 关键是搞清楚字符串对象为空和空字符串有区别。个人观点,供参考。

热心网友 时间:2022-04-12 01:27

使用 if(str==null) 判断。。

str.equal("null"),这个是用来判断字符串的值,是不是 "null"。。

热心网友 时间:2022-04-12 03:52

字符串为空是a.equals("null")对象为空是a==null
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
美克拉营销系统,谈谈一般美容院顾客到店率低的原因 ...怎样找下家,怎样使一家美容院有客流,有竞争力!请教各位大侠!_百度... 美容院怎么引流,有没有最新美容院拓客的方法推荐? 放置奇兵 放置奇兵光暗英雄排行是什么样的? 放置奇兵 放置奇兵英雄强度排行什么样? 放置奇兵 放置奇兵时空英雄哪个好? 淘宝直播能挂淘客链接吗?淘宝直播万能链接怎么做? 关于魔兽世界法师的一点小问题 勤哲可视化快速开发平台,觉得怎么样? 风机的主要结构是什么意思 java中怎么判断一个输入的是字符串 java中对输入的字符串进行判断 在java字符串中如何判断字符的类型 JAVA中如何判断一个数组或者字符串是否为空 Java中判断字符串是否为数字的几种方法 周公解梦 梦到姐姐生了个儿子 她婆婆不太高兴 因为... premiere怎么修改时间线长度 premiere如何改变视屏源文件时间 在pr 里面怎么样把视频时间修改长一点 premiere整体调整时间 premiere做视频怎么预先设置时长? 怎么修改一开始pr的影片持续时间 pr中如何让调整输出时间 Adobe Premiere怎么设置视频长度时间 我的视频只需... pr调整视频长短的快捷键是什么? premiere 视频片段如何在时间线上微调 pr里怎么把视频时间变短 Premiere 怎么设置持续时间? PR中设置时长过久怎么调节 如何修改录制视频中的时间与日期! java 如何判断是字符串还是数字 java判断字符串是否为空 java如何判断字符串为八位的字母字符? java中怎么判断一个字符串中包含某个字符或字符串 java中判断一个字符串是不是数字 java字符串判断问题 JAVA中如何判断一个字符串是否为另一个字符串的子串 java如何判断一个数是不是字符串 java 怎样判断是否为字符串 java 怎么判断一串字符串,是不是6位的数字? java中判断字符串是否为纯数字 java怎么判断结果为一个字符串 在java中如何判断一个字符串是中文的还是英文的 公司的车能用来注册滴滴吗? 公司户怎么注册滴滴? 公司车注册滴滴谁能解决 公司车辆 如何加入滴滴 公司车可以申请滴滴吗?我的是公司车 公司名下的车能注册网约车吗? 如何注册成为滴滴顺风车车主?公司车可以注册吗?