自学java基础day1


如何从底层逻辑理解:

String s1 = new String(“hello”);

String s2 = “hello”;的区别

前者在使用时创建了两个对象,一个在堆内存中,一个在方法区中

自学java基础day1

 

new的含义是实例化,狗类 阿黄=new 狗类();意思是:阿黄是狗类这种类,同时他的名字叫做阿黄。

String s1 = “hello,world”

String  s2=”hellow,world”

所以说 Systeam.out.println(s1=s2)结果为true。

String s1 = new String(“hello”);

String s2 = new String(“hello”);

所以说对于new来说实例化了,s1和s2本质上确实不是同一个东西,所以Systeam.out.println(s1=s2)是false。

补充:(更好的理解底层逻辑:内存):

自学java基础day1

自学java基础day1

 

 

对于boolean型来说如何写精简的判断逻辑:

if (s1=true);等价于 if (s1)

 

 

 

 

 

 

原创文章,作者:bd101bd101,如若转载,请注明出处:https://blog.ytso.com/277347.html

(0)
上一篇 2022年7月27日
下一篇 2022年7月27日

相关推荐

发表回复

登录后才能评论