String 預設是不可變更的(immutable)

更新 發佈閱讀 1 分鐘


String str = "abc";
String str2 = "qaz";
String str3 = "qaz";

System.out.println(str == str2); // false
System.out.println(str2 == str3); // true

str3 = "asd"; // 會在JVM的 Heap memory區塊的 string constant pool 新增一個 asd的字串並分配新地址


一開始宣告的str2與str3都是"qaz"

當宣告str2="qaz"時,string constant pool會新增一個存取"qaz"字串的位子並配予地址107

接著宣告str3="qaz",string constant pool會先檢查是否已經有"qaz"這個字串,如果已經存在,那麼就會將該地址107給到str3做指向

在程式第8行的時候將str3的值改為"asd",string constant pool 檢查此字串不存在,所以新增一個 asd的字串並分配新地址113,因此str3所指向的地址由107變為113

vocus|新世代的創作平台

雖然表面上改變了字串內容,但底層,在記憶體中,只是分配了不同的地址給你的變數做指向

如果希望真的直接改變記憶體中字串的內容

使用StringBuffer(Thread-safe)或StringBuilder(not Thread-safe)

留言
avatar-img
Genos's Coding Diary的沙龍
6會員
19內容數
我的Java學習日記
2023/10/03
為何要重寫equals方法? 為何要重寫hashCode方法?
2023/10/03
為何要重寫equals方法? 為何要重寫hashCode方法?
2023/09/27
兩種方式進行物件比較,使用Comparator或使用Comparable
2023/09/27
兩種方式進行物件比較,使用Comparator或使用Comparable
2023/09/27
併發,多個事情在同一時間段內同時發生 並行,多個事情在同一個時間點上同時發生
2023/09/27
併發,多個事情在同一時間段內同時發生 並行,多個事情在同一個時間點上同時發生
看更多
你可能也想看
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
先須知識: 了解什麼是變數 作用域scope 在Rust中,變數預設是不可變的 let name = "Zoe"; // 預設變數不可變 也就同於Javascript中的const,若想讓變數可變則需要在let後面加上mut關鍵字: let mut name = "Vicky"; nam
Thumbnail
先須知識: 了解什麼是變數 作用域scope 在Rust中,變數預設是不可變的 let name = "Zoe"; // 預設變數不可變 也就同於Javascript中的const,若想讓變數可變則需要在let後面加上mut關鍵字: let mut name = "Vicky"; nam
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
在 JavaScript 中,字串(String)是一個不可變的原生資料型態,用來存放並處理文字。JavaScript 提供多種方法和屬性來操作和格式化字串。理解這些屬性與方法,能讓我們更靈活地處理文字資料,特別是在處理用戶輸入、顯示訊息或處理 API 回傳的資料時非常有用。
Thumbnail
在 JavaScript 中,字串(String)是一個不可變的原生資料型態,用來存放並處理文字。JavaScript 提供多種方法和屬性來操作和格式化字串。理解這些屬性與方法,能讓我們更靈活地處理文字資料,特別是在處理用戶輸入、顯示訊息或處理 API 回傳的資料時非常有用。
Thumbnail
一、存取修飾詞public / private / protected / internal 二、參數修飾詞ref / in / out >>>>>由於我們在寫程式時,會去宣告一些變數、常數相關識別詞,並且在class(類別)中會寫一些事情或動作讓程式去運行,然而這個概念就是去定義對於我們所寫的內容
Thumbnail
一、存取修飾詞public / private / protected / internal 二、參數修飾詞ref / in / out >>>>>由於我們在寫程式時,會去宣告一些變數、常數相關識別詞,並且在class(類別)中會寫一些事情或動作讓程式去運行,然而這個概念就是去定義對於我們所寫的內容
Thumbnail
f字符串(f-string)在Python 3.6版本引入了新特性,可以更方便地格式化字符串。本文介紹了f-string的基本使用方法,以及表達式、運算符、格式化控制、字典和列表的應用,以及調用方法和函數等。f-string提供了一種更靈活的方式,使你能夠控制字符串的外觀,以滿足不同情況下的需求。
Thumbnail
f字符串(f-string)在Python 3.6版本引入了新特性,可以更方便地格式化字符串。本文介紹了f-string的基本使用方法,以及表達式、運算符、格式化控制、字典和列表的應用,以及調用方法和函數等。f-string提供了一種更靈活的方式,使你能夠控制字符串的外觀,以滿足不同情況下的需求。
Thumbnail
表面上看似改變了,但底層記憶體中的值是沒有改變的。
Thumbnail
表面上看似改變了,但底層記憶體中的值是沒有改變的。
Thumbnail
承接上一段,接下來到了一段Rust比較新奇的部分也是控制記憶體的部分AKA所有權。 Rust 程式設計語言 所有權是在Rust處理記憶體的機制,記憶體由所有權系統管理,且編譯器會在編譯時加上一些規則檢查。 在這之前需要知道的部分 每個變數有一個所有者(owner) 同時間只能有一個所有者 只要擁有者
Thumbnail
承接上一段,接下來到了一段Rust比較新奇的部分也是控制記憶體的部分AKA所有權。 Rust 程式設計語言 所有權是在Rust處理記憶體的機制,記憶體由所有權系統管理,且編譯器會在編譯時加上一些規則檢查。 在這之前需要知道的部分 每個變數有一個所有者(owner) 同時間只能有一個所有者 只要擁有者
Thumbnail
在其他語言會時常使用正規表達式來幫字串進行 Filter,在遊戲製作裡面比較遇不到處理使用者的字串輸入、資料庫查詢結果的情況,但在編輯程式碼,有搜尋(Ctrl+F)、取代(Ctrl+H)需求時使用 Regex 也能提升工作效率。
Thumbnail
在其他語言會時常使用正規表達式來幫字串進行 Filter,在遊戲製作裡面比較遇不到處理使用者的字串輸入、資料庫查詢結果的情況,但在編輯程式碼,有搜尋(Ctrl+F)、取代(Ctrl+H)需求時使用 Regex 也能提升工作效率。
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News