日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

[转载] 必须要会回答的Java面试题(字符串篇)

發(fā)布時間:2025/3/11 java 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [转载] 必须要会回答的Java面试题(字符串篇) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

參考鏈接: 比較Java中的兩個字符串String

最近很多學(xué)習(xí)java的小白問我字串相關(guān)的問題,覺得很有必要整理下,以方便初學(xué)者理解字符串以及應(yīng)對今后面試中考官的提問。?

如果你是有幾年Java開發(fā)經(jīng)驗,可以根據(jù)目錄選擇性的閱讀以下內(nèi)容,并歡迎留言補充。?

問題列表如下:?

0.String是最基本的數(shù)據(jù)類型嗎? 1.String是否可以被繼承? 2.Java中的String a = "abc"和String a = new String("abc")的區(qū)別? 3.為什么字符串是不可變的? 4.什么是String常量池? 5.使用字符串初始化代碼:String a = new String("abc");創(chuàng)建多少個對象? 6.String類中intern()的作用? 7.使用equals()和'=='進行字符串比較的差異? 8.String StringBuffer StringBuilder 三者各自線程安全性如何? 9.String,StringBuffer以及StringBuilder之間的區(qū)別? 10.如何連接多個字符串。 11.如何分割一個String? 12.如何判斷兩個String是否相等? 13.String類中,字符串長度是否有限制? 14.Java String “+”連接符拼接字符串原理??

0.String是最基本的數(shù)據(jù)類型嗎? Java中基本數(shù)據(jù)類型包括byte,int,char,long,float,double,boolean,short一共八個;String是定義在 java.lang 包下的一個類。它不是基本數(shù)據(jù)類型。?

1.String是否可以被繼承? 不可以,因為String類似final類。?

2.Java中的String a = "abc"和String a = new String("abc")的區(qū)別? String a = "abc" 使用常量進行初始化,初始化后內(nèi)存存儲在String常量池中 String a = new String("abc") 創(chuàng)建字符串對象,JVM創(chuàng)建字符串對象但不存儲于字符串池。?

3.為什么字符串是不可變的? 因為String類似final類。?

4.什么是String常量池? 字符串池是一個特殊的內(nèi)存區(qū)域,與存儲這些字符串常量的常規(guī)堆內(nèi)存分開。這些對象在應(yīng)用程序的生命周期中被稱為字符串變量。 如:雙引號直接創(chuàng)建的字串,String a = "abc",會將"abc"存儲在該區(qū)域。?

5.使用字符串初始化代碼:String a = new String("abc");創(chuàng)建多少個對象? 上面一行代碼將會創(chuàng)建1或2個字符串。如果在字符串常量池中已經(jīng)有一個字符串“abc”,那么就只會創(chuàng)建一個“abc”字符串。如果字符串常量池中沒有“abc”,那么首先會在字符串池中創(chuàng)建,然后才在堆內(nèi)存中創(chuàng)建,這種情況就會創(chuàng)建2個對象了。?

6.String類中intern()的作用??

作用:返回字符串對象的規(guī)范表示。 調(diào)用該方法時,如果池已包含String與equals(Object)方法確定的此對象相等的字符串,則返回池中的字符串。否則,將此String對象添加到池中,并String返回對此對象的引用。 它遵循對于任何兩個字符串s和t,s.intern()==t.intern()是true當(dāng)且僅當(dāng)s.equals(t)是true。意味著如果s和t都是不同的字符串對象并且具有相同的字符序列,則在兩者上調(diào)用intern()將導(dǎo)致由兩個變量引用的單個字符串池文字。?

典型考題:?

String s1 = new String("ab") + new String("c");

s1.intern();因為此時常量池沒有"abc",會將s3指向常量"abc"

String s2 = "abc";

System.out.println(s1 == s2);//true

?

String s3 = new String("de") + new String("f");

String s4 = "def";

s3.intern();// 因為此時常量池有"def",不會將s3指向常量"def"

System.out.println(s3 == s4);// false

?

String s5 = "ghi";

String s6 = new String("ghi");

s6.intern();// 因為此時常量池有"ghi",不會將s6指向常量"ghi"

System.out.println(s5 == s6);//false?

7.使用equals和'=='進行字符串比較的差異? 字串中equals是重寫的一個方法,比較字符串中value字符數(shù)組中字符是否一致,即比較的是字符串的值,==不僅比較字符串的值,而且還比較兩個字符串所在內(nèi)存地址是否相同。?

8.String StringBuffer StringBuilder 三者各自線程安全性如何? String? StringBuffer線程安全,StringBuilder非線程安全。?

9.String,StringBuffer以及StringBuilder之間的區(qū)別? String是值不可變類,每次在String對象上的操作都會生成一個新的對象;StringBuffer和StringBuilder則允許在原來對象上進行操作,而不用每次增加對象;StringBuffer是線程安全的,但效率較低,而StringBuilder效率最高,但非線程安全。?

10.如何連接多個字符串。 String:通過解讀Java API,可以知道Java為字符串連接運算提供特殊支持。 字符串連接是通過StringBuilder (或StringBuffer )類及其append方法實現(xiàn)的。 StringBuffer:使用append實現(xiàn) StringBuilder:使用append實現(xiàn)。?

11.如何分割一個String? 可以使用字串分隔函數(shù):public String[] split(String regex),根據(jù)傳入的正則字符串進行分割,注意,如果最后一位剛好有傳入的字符,返回數(shù)組最后一位不會有空字符串。?

12.如何判斷兩個String是否相等? 有兩種方式判斷字符串是否相等,使用"=="或者使用equals方法。當(dāng)使用"=="操作符時,不僅比較字符串的值,還會比較引用的內(nèi)存地址。大多數(shù)情況下,我們只需要判斷值是否相等,此時用equals方法比較即可。 還有一個equalsIgnoreCase可以用來忽略大小寫進行字符串值比較。?

13.String類中,字符串長度是否有限制? 可以看字符串類的源碼,字符串使用char數(shù)組存放字符,該字符數(shù)組為定義最大長度,故,理論上來說String是沒有長度限制的,限制的是你的內(nèi)存有多大。?

14.Java String “+”連接符拼接字符串原理? String字符串拼接通過StringBuilder走中間過程,通過append方法實現(xiàn)。?

程序有大量字符串拼接時,建議直接StringBuilder實現(xiàn),就不需要底層new很多臨時String對象了。注意null參與拼接時會變成字符串"null"。?

相關(guān)問題持續(xù)更新匯總,逐步添加代碼及更詳細的原理解析。

總結(jié)

以上是生活随笔為你收集整理的[转载] 必须要会回答的Java面试题(字符串篇)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 青青草在线视频免费观看 | 美女光屁股视频 | 日本欧美黄色 | 人人人妻人人澡人人爽欧美一区 | 欧美成人午夜剧场 | 日韩色综合网 | 好吊色这里只有精品 | 88国产精品视频一区二区三区 | 亚洲欧洲视频在线观看 | 成 年人 黄 色 片 | 韩国日本欧美一区 | 欧美亚一区二区三区 | 成人午夜网址 | 爱的色放韩国电影 | 国产天堂av在线 | 日产精品久久久一区二区 | 成人综合社区 | 日韩脚交footjobhd | 丰满岳妇乱一区二区三区 | 国产精品久久久久久吹潮 | www.久久| 亚洲人在线播放 | 亚洲免费在线视频观看 | 亚洲国产成人精品久久 | 日韩欧洲亚洲 | 三级欧美日韩 | 中文字幕人妻一区二区三区视频 | 亚洲国产黄色av | 欧美乱妇狂野欧美视频 | 亚洲欧美国产一区二区三区 | 国产又大又黄又爽 | 国产精品300页 | 久久久久成人精品免费播放动漫 | 国产无码精品在线观看 | 日本激情久久 | 日本一二三区视频 | 成人网在线看 | 欧美一区二区三区在线观看 | 自拍偷拍福利视频 | 亚洲品质自拍 | 青青草久 | 粉嫩视频在线观看 | 亚洲综合情 | 丰腴饱满的极品熟妇 | 超碰c | 国产黄色小视频在线观看 | 欧美在线视频二区 | 欧美极品一区 | wwwav在线 | 天天射寡妇射 | 热久久91 | 成人精品在线观看视频 | 精品一区二区三区四区五区 | 日韩欧美久久久 | 在线播放日韩av | 日韩69视频 | 亚洲成人av免费在线观看 | 亚洲精品无码永久在线观看 | 国产中文字幕av | 日韩免费一区二区三区 | 免费看黄色大片 | 精品人妻一区二区三区免费看 | 色久av| 欧美在线视频不卡 | 免费在线你懂的 | 一区二区三区视频在线 | 中文字幕av网址 | 日本午夜在线 | 欧美人与禽zoz0性3d | 少妇熟女一区二区三区 | 午夜成人亚洲理伦片在线观看 | 五月婷婷狠狠干 | 免费黄色欧美 | 伊伊综合网 | 99久久亚洲精品日本无码 | 成人美女免费网站视频 | 男男大尺度| a天堂v | 免费视频一二三区 | 69av视频在线 | a级黄毛片 | 各处沟厕大尺度偷拍女厕嘘嘘 | 日韩视频一区二区三区 | 精品一区二区三区在线播放 | 午夜少妇影院 | 狠狠干青青草 | 美女试爆场恐怖电影在线观看 | 久久精品国产露脸对白 | 亚洲免费视 | 毛片久久久久久 | 国产人妻久久精品一区二区三区 | 亚洲精品久久久久久久蜜桃臀 | 国产精品第八页 | 红桃成人网 | 漂亮人妻被黑人久久精品 | 夜夜爱av| 欧美视频区 | 日韩视频一区二区三区 | 91手机视频在线观看 |