亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java:判斷字符串相等

瀏覽:67日期:2024-02-13 15:56:11

問(wèn)題描述

問(wèn)題解答

回答1:

String a = new String('abc');a = a.intern();String b = 'abc';if (a == b) { System.out.println('相等');} else { System.out.println('不等');}

你是調(diào)用了a.intern()方法,但是你又沒(méi)有將返回結(jié)果重新賦值,a還是原來(lái)那個(gè)a。

回答2:

字符串相等用 equals() 判斷,Java 中這個(gè)題都考爛了噠!

回答3:

a.intern();不會(huì)改變a字符的引用,他有個(gè)返回值。下面這樣才會(huì)相等

String b = a.intern();回答4:

String a = new String('abc');

這里的a和'abc'是兩個(gè)對(duì)象,當(dāng)調(diào)用 intern 方法時(shí),字符常量池中已經(jīng)包含一個(gè)等于此對(duì)象的字符串了,所以intern這個(gè)方法調(diào)用等于沒(méi)用,即使后面b='abc',b和a也不是同一個(gè)對(duì)象。

想要輸出相等的話(huà),要么第一句變成:

String a = 'abc';

要么第二句變成:

a = a.intern();回答5:

首先要知道一點(diǎn)是==操作判斷的是:是否a,b兩個(gè)對(duì)象或基本類(lèi)型指向同一內(nèi)存區(qū)域

String的底層實(shí)現(xiàn)是private final value[]String實(shí)例化時(shí),實(shí)際上是通過(guò)System.arraycopy劃分一段連續(xù)內(nèi)存保存char數(shù)組。

new String('abc')實(shí)際上不推薦這種方法初始化String,實(shí)際實(shí)現(xiàn)起來(lái)比 a = 'abc'多了一個(gè)步驟,底層步驟是

劃分內(nèi)存空間,創(chuàng)建臨時(shí)數(shù)組temp

temp[0] = ’a’;temp[1] = ’b’;temp[2] = ’c’;

創(chuàng)建數(shù)組value ,將value所指內(nèi)存空間指向temp指向的內(nèi)存空間,即 &value = &temp(若使用a = 'abc'則不需要這步)

intern方法是jdk1.5提供的方法,用于內(nèi)存優(yōu)化的,相同String引用共同內(nèi)存空間,實(shí)際上就是上述的第三步。這里若要a,b相等,可以寫(xiě)為

String a = 'abc';String b = 'abc'.intern(); 或者String b = a.intern();

實(shí)際上 進(jìn)行的操作就是上述的第三步,即 b = a;

String b = 'abc'實(shí)際的底層實(shí)現(xiàn)是:

劃分內(nèi)存空間,創(chuàng)建數(shù)組value

value[0] = a.value[0];value[1] = a.value[0]’;value[2] = a.value[0];

第二步中,String b中value[0]中的String a中的value[0]實(shí)際中指向的是同一個(gè)內(nèi)存地址,因此實(shí)際上b.value[0] = a.value[0] = ’a’,但b.value 不等于a.value,根本原因在于指向內(nèi)存區(qū)域不同

推薦看一下String的源碼分析【JAVA源碼分析——Java.lang】String源碼分析

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 国产精品第1页 | 51激情精品视频在线观看 | 国产成人亚洲精品 | 中国特级毛片 | 国产好大好爽久久久久久久 | 国产精品久久久久这里只有精品 | 在线看片日韩 | 欧美成人免费一级人片 | 一级在线视频 | 国产视频在线一区 | 麻豆网站入口 | 欧美成人观看免费版 | 福利一区二区三区视频午夜观看 | 国产免费福利片 | 国产一级特黄全黄毛片 | 青青草视频破解版 | 日韩伦理中文字幕 | 亚洲精品综合网在线8050影院 | 欧美毛片免费观看 | 欧美大片全黄在线观看 | 一级毛片在线完整观看 | 成年视频xxxxx在线入口 | 久久er热在这里只有精品85 | 看真人一一级毛片 | 99视频在线观看视频一区 | 性感视频网站 | 免费观看黄色小视频 | 亚洲黄色在线播放 | 一区二区三区无码高清视频 | 黄色一级片在线看 | 97福利社| 日本人视频18jizz免费 | 日韩乱淫 | 免费特黄级夫费生活片 | 国产综合日韩伦理 | 亚洲国产精品热久久2022 | 欧美一二三区在线 | 二级黄色大片 | 欧美黑人两根巨大挤入 | 可以看的毛片 | 欧美系列在线播放 |