锐客直播_锐客直播app官方正版下载_锐客直播直播视频在线观看免费版下载

400-650-7353
您所在的位置:首頁 > IT干貨資料 > java > 【Java基礎(chǔ)知識】Java中的字符串是什么

【Java基礎(chǔ)知識】Java中的字符串是什么

  • 發(fā)布: java培訓(xùn)
  • 來源:Java培訓(xùn)干貨資料
  • 2020-04-08 17:46:45
  • 閱讀()
  • 分享
  • 手機端入口

字符串顧名思義就是一些字符組合在一起組成的一串?dāng)?shù)據(jù),稱作字符串,在Java中字符串用雙引號包圍起來,格式為String string = “hello world”; 這里的hello world就是一個字符串,字符串里面可以包含任何的字符內(nèi)容;

在Java中String是一個類,所以除了上面直接讓String對象等于一個字符串之外,我們可以向普通的類一樣,使用new創(chuàng)建一個String對象;

當(dāng)我們使用第一種方法也就是String string = ”hello”;的時候,程序會在特定的內(nèi)存中(專門保存字符串的內(nèi)存)查找是否有”hello”這個字符串,如果沒有則在這個內(nèi)存區(qū)域創(chuàng)建一個”hello”字符串,當(dāng)我們再次創(chuàng)建另一個字符串String string2 = “hello”;的時候,由于這個時候,這個內(nèi)存區(qū)域已經(jīng)有了”hello”這個字符串,所以我們string2就直接指向了”hello”這個地址;這個時候我們使用string == string2的時候,得到的結(jié)果是true;也就是說兩個指向值是相等的;

當(dāng)我們使用new 的方式創(chuàng)建一個字符串對象的時候,我們查看String源碼,可以發(fā)現(xiàn)String類中是使用private final char value[];的變量來存放字符串的內(nèi)容;當(dāng)我們創(chuàng)建兩個字符串String string2 = new String(“hello”); String string3 = new String(“hello”);這個時候,我們使用string2 == string3的時候,得到的結(jié)果是false;這是由于new創(chuàng)建的對象會分別在內(nèi)存中創(chuàng)建兩個地址,所以string2和string3不相等;但是我們使用string2.value == string3.value的時候,得到的結(jié)果是true;因為這兩個地址的字符串在內(nèi)存中是指向的同一個地址的”hello”,并且和我們剛才創(chuàng)建的string所指向的”hello”地址一樣;所以我們一般比較字符串的時候,使用string2.equal(string3);的方式進(jìn)行比較;

我們可以從下圖中看出來,雖然有四個String對象,但是他們的value值的地址都是一樣的;

【Java基礎(chǔ)知識】Java字符串

Java中String類的構(gòu)造方法非常的多,我們根據(jù)需求,將不同類型的數(shù)組轉(zhuǎn)換成我們想要的字符串;并且String中有我們用的比較多的一些方法,比如public boolean equalsIgnoreCase( String anotherString )表示忽略兩個字符串中字符的大小寫,比較兩個字符串是否相等;public boolean startsWith(String prefix, int toffset)表示從字符串第toffset的位置是否是由prefix開始的;public boolean endsWith(String suffix)判斷字符串是否是以suffix結(jié)束的,我們可以從源碼中看到,這個方法使用了startsWith(suffix, value.length - suffix.value.length)的方法;public String substring(int beginIndex)表示截取字符串從beginIndex開始以后的內(nèi)容;public String substring(int beginIndex, int endIndex)表示截取字符串從beginIndex到endIndex位置的內(nèi)容;

Java對字符串的封裝非常的強大,除了上述的常用方法之外,還有很多非常方便的方法;能夠熟練掌握String對我們的開發(fā)有非常大的幫助;

 

文章“【Java基礎(chǔ)知識】Java中的字符串是什么”已幫助

>>本文地址:http://uj2y2uok.com/zhuanye/2020/48597.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個方向的工作?

獲取測試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營銷互聯(lián)網(wǎng)營銷
  • JavaJava
  • Linux云計算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運營全域電商運營
  • 軟件測試軟件測試
  • 室內(nèi)設(shè)計室內(nèi)設(shè)計
  • 平面設(shè)計平面設(shè)計
  • 電商設(shè)計電商設(shè)計
  • 網(wǎng)頁設(shè)計網(wǎng)頁設(shè)計
  • 全鏈路UI/UE設(shè)計UI設(shè)計
  • VR/AR游戲開發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運營新媒體
  • 直播帶貨直播帶貨
  • 智能機器人軟件開發(fā)智能機器人
 

快速通道fast track

近期開班時間TIME