成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

String類的 equals、==和intern()

開發 后端
測試開發同學在面試中如果你能說出==和equlas()的區別,那么面試官應該就會滿意了。如果你還能給面試官講解intern()的用法,面試官絕對會眼前一亮,大大提升你的入職機會!

 Java實例的生成
我們都知道,java中new 一個類的實例是在JVM的堆中完成的,如下圖所示:

在這里我們以String類為例講解一些更為細節的東西!

String生成實例的代碼如下:

String str=new String("hello");

對于通過new產生一個字符串(假設為” hello”)時,會先去上圖的常量池中查找是否已經有了” hello”對象,如果沒有則在常量池中創建一個此字符串對象,然后堆中再創建一個常量池中此”hello”對象的拷貝對象。

==和equlas()
我們看以下代碼

String str1=new String("hello");

String str2=new String("hello");

System.out.println(str1==str2);

System.out.println(str1.equals(str2));

輸出結果:

false

true

str1 和str2是引用(引用大家可以理解為指針,他指向"hello"所在內存中的地址),因為new String("hello") 相當于在堆中開辟了新的內存空間,然后在新開辟的內存空間中儲"hello",str1 和str2指向的內存地址是不同的,這與他們在內存空間中存儲的值是否相等無關!與==對應的是方法equals(),它是對String的值的比較,因為s1和s2的值都是hello,所以他們是相等的!

高級的intern()
接下來我們看一下比較高級的方法intern(),看下面這個例子

Strings1="hello";

Strings3=new String ("hello");

System.out.println(s1==s3);

System.out.println(s1==s3.intern());

輸出結果:

false

true

對于第一個結果false很容易理解,因為s1 和s3的引用地址不同!s3調用了intern()方法,相當于把一個運行時創建的字符串加到字符串常量池(如果它還沒有入池)。這樣一來s1和s3都指向了常量池中的同一個地址,所以它們是相等的!

總結
測試開發同學在面試中如果你能說出==和equlas()的區別,那么面試官應該就會滿意了。如果你還能給面試官講解intern()的用法,面試官絕對會眼前一亮,大大提升你的入職機會!

 

 

責任編輯:姜華 來源: 今日頭條
相關推薦

2015-03-24 13:28:52

Java Java Strin內存模型

2024-03-05 18:29:54

JavaString字符串

2023-10-12 08:25:18

Javaequals內存

2021-04-26 20:44:59

Nacos方法String.inte

2009-09-17 15:10:57

RefrenceEqu

2024-03-19 14:41:08

C#操作符開發

2011-06-28 10:34:54

==equals

2020-07-01 07:44:06

javaSE==equals

2012-04-05 13:37:10

JavaString

2021-06-06 20:56:48

Java內存 intern

2023-12-15 09:21:17

ObjectJavaString

2011-03-25 09:47:25

PracticalJa

2010-10-19 14:48:09

Java String

2021-05-27 08:59:09

String字符串操作

2022-12-28 09:10:44

HashMapImmutable類型

2009-09-23 09:47:23

Hibernate e

2021-04-01 10:01:55

JavaStringJava基礎

2024-03-07 16:12:46

Java字符串線程

2023-09-18 08:56:57

StringJava

2016-09-06 19:32:11

PythonWeb
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91久久 | 亚洲在线一区 | 久久久123 | 日韩毛片中文字幕 | 亚洲一区二区三区高清 | 久久只有精品 | 人干人人 | 国产精品亚洲第一区在线暖暖韩国 | 无毛av| 亚洲三区在线观看 | 亚洲高清在线 | 欧美精品福利视频 | 三级在线视频 | 在线日韩 | 久久久久久成人 | 午夜视频在线免费观看 | 国产1区2区 | 亚洲精品一区二区三区中文字幕 | 国产精品美女一区二区 | 黄色一级视频免费 | 999热精品 | 操网站| 精品欧美一区二区久久久伦 | 国产精品一区二区三区在线 | 精品久久av | 高清视频一区二区三区 | www.成人免费视频 | 黄色在线观看国产 | 中文字幕第九页 | 国产第一页在线播放 | 99精品一级欧美片免费播放 | 欧美成人激情视频 | 黄色一级视频 | 国产精品久久久久9999鸭 | 东京久久 | 欧美成人精品激情在线观看 | 不卡一二区| 国产精品精品久久久 | 亚洲精品欧美一区二区三区 | 97超碰在线免费 | 中文字幕日韩三级 |