iT邦幫忙

2024 iThome 鐵人賽

DAY 11
0
JavaScript

大樂透對獎系列 第 11

字串

  • 分享至 

  • xImage
  •  

特性:
為了效率考量,以 "" 包括的字串,只要內容相同(序列和大小寫相同),無論在程式碼中出現幾次,JVM都只會建立一個String實例,並在字串池(String pool)中維護,既然寫死了字串內容,基於節省記憶體考量,自然就不用為這些字串常量分別建立String實例。

如果想比較物件實質內容是否相同,不要使用==,要使用equals。同樣地,如果想比較字串實際字元內容是否相同,不要使用==,要使用equals。

字串物件一旦建立,就無法更動物件中任何內容,物件上沒有任何方法可以更動字串內容。

不要將+用在重複性的串接場合,像是迴圈中或遞迴時使用+串接字串,這會因為頻繁產生新物件,造成效能上的負擔。

文字區塊:

文字區塊使用 """ 標示區塊開頭與結尾,可以在文字區塊中直接換行、縮排,不管作業系統本身的換行符號為何,文字區塊的換行都會使用\n,縮排的起點以結尾的 """ 該行起點作為依據。

文字區塊會建立String實例,因此若文字區塊中有需要置換的部分,可以使用formatted方法,這是Java 15在String新增的實例方法,在Java 15之前,若要直接對字串進行格式化,可以透過String.format靜態方法。


上一篇
字串
下一篇
封裝
系列文
大樂透對獎12
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言