為什麼資料型別要不是可變的,就是不可變的?
讓我們以 python 為例,
python中的資料型態基本上是物件或類,int是類,浮點數,列表等
因此,寫入 x=6 會建立一個新的整數物件,其值為 6,並將名為 x 的參考指向該物件。
現在我們需要研究類,類別基本上將資料和函數組合在一起,這些函數稱為方法,它們有兩種類型:accessor和mutator方法。
存取器方法存取物件的目前狀態,但不會變更物件本身,例如
x = "你好"
y = x.upper()
這裡,在 x 引用的對像上調用了 upper 方法,然後 upper 訪問器返回一個新對象,一個 str 對象,它是原始字符串的大寫版本。 (隨意重新閱讀),基本上它返回一個基於原始對象的新對象,現在只是它是大寫的。
另一方面,Mutator 方法會改變現有物件中的值,一個很好的例子是清單類型(類別)。
新列表 = [1,2,3]
newList.reverse()
此方法將改變現有對象,突變方法無法撤銷。
缺少這些修改器方法的資料類型被認為是不可變的,因此僅包含存取器方法,缺少的資料類型是可變的。
希望這有幫助,保持好奇:)
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3