导航:首页 > 编程语言 > java中空字符串和null

java中空字符串和null

发布时间:2023-09-14 08:04:52

java空字符串与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)。
二、判断字符串是否为空的方法
String str = null;
if(str.equals("") || str= == null){//会抛出异常
System.out.println("成功");
}

Ⅱ Java空字符串与null的区别和判断字符串是否为空的方法

以下是 Java 判断字符串是否为空的三种方法.

方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低.
1:if(s == null || s.equals(""));
方法二: 比较字符串长度, 效率高, 是我知道的最好一个方法.
2:if(s == null || s.length() <= 0);
方法三: Java SE 6.0 才开始提供的方法, 效率和方法二几乎相等, 但出于兼容性考虑, 推荐使用方法
3:if(s == null || s.isEmpty());

Ⅲ java 空字符串与null区别

做成员变量(字段/属性/类变量)时,如果只写String str;那么是默认赋值为null的。

做局部变量(方法里的变量)时,如果只写String str;是不会默认赋值null的,这里仅声明了一个str变量,在栈内存中有定义,但没有任何值,null其实也是一种值。此时任何调用str的操作,编译时就均会报错,是error,不是异常。null的话,你屏幕输出(toString方法)的结果为字符串null,但其它调用str的操作,编译可通过,运行时会空指针异常,此时是异常。

String str = ""; // 这个跟"abc"、"中国",本质上这都一样,只是空串,长度为0罢了
""是空字符串,但是也是字符串,没有什么东西。
而null是空的意思,什么都没有,没有地址。

Ⅳ 你好,Java的空字符串和null有什么区别

一般情况下 . java中的null就是指的空 . 但是稍微注意的是 空字符串"" 和null是有区别的 "" 代表有字符串, 但是字符串内容为空, 长度为0 null表示对象为空 如果用为null的对象去调用方法, 就会出现空指针异常 所以 在字符串进行内容比较时

Ⅳ null和空字符有区别吗

null和空字符的区别:

1、NULL:代表声明了一个空对象,不是一个字符串,可以赋给任何对象。

空字符:代表声明了一个对象实例,这个对象实例的值是一个长度为0的空字符串。

2、String s=null; 只是定义了一个句柄,即你有了个引用,但是这个引用未指向任何内存空间。

String s=”“; 这个引用已经指向了一块是空字符串的内存空间,是一个实际的东东了,所以可以对它操作。

String s=”a”和String s=new String(“a”);是有本质上的区别的 :

(1) 前者是在字符串池里写入一个字符’a’,然后用s指向它; 后者是在堆上创建一个内容为”a”的字符串对象。

(2) String str=”aaa”; //于栈上分配内存 ;String str=new String(“aaa”); //于堆上分配内存

阅读全文

与java中空字符串和null相关的资料

热点内容
有哪些可以督促自己的app 浏览:244
用USB传输视频文件夹显示为空 浏览:710
恢复文件软件免费版手机 浏览:648
lg怎么隐藏文件 浏览:836
苹果免费读书app推荐 浏览:497
刘骏微信 浏览:113
书旗旧版本80 浏览:467
教编程考什么证 浏览:990
下载编程猫后哪里有客服 浏览:13
如何编辑歌曲文件格式 浏览:638
cf无限领取cdk工具 浏览:350
如何让手机文件保存到电脑上 浏览:459
sa数据库默认密码是多少 浏览:191
电脑正在查找文件 浏览:541
一个文件盒省内寄顺丰多少钱 浏览:41
诛仙62坐骑怎么升级到63 浏览:926
linux以日期查看日志记录 浏览:446
工业大数据是什么东西 浏览:881
魅族note3怎么重置网络 浏览:510
c语言程序设计模 浏览:92

友情链接