因此,您正在走進去,聽到了有關切片的信息。 “切片是什麼?”你可能想知道。數組還不夠嗎?好吧,讓我們分解!切片是GO中的殺手級功能。它們就像陣列一樣,但是更涼爽 - 它們具有動態和靈活性,能夠根據您的程序需要增長和縮小。但是沿途有一兩個漁獲。讓我們打開所有包裝,讓您精通!
[2
切片:類固醇的陣列
那麼,我們如何馴服這隻野獸?輸入
這是YA的方便的提示:如果您知道您需要很大的空間來進行切片,請使用Make功能。使用Make([] T,Len,Cap),您可以告訴GO:“嘿,以這種長度和這種能力給我這類型。”準備好起初的能力可以節省以後調整大小的成本。聰明,對吧?
例如:
numbers := make([]int, 0, 100)長度與容量:切片的動態二人組
每個切片都有一個長度(LEN)和一個容量(CAP),並且它們扮演著不同的角色:
cap(slice):這是切片大小之前切片可以保持的最大長度。 假設您有一個切片X。如果您嘗試使用大於長度(LEN(x))的N訪問X [N],則您會遇到一個偏僻的錯誤。但是,不用擔心!如果您將物品添加到切片中並達到其容量,請僅在引擎蓋下為您分配更大的陣列。您要做的就是保持編碼。
數字:= [] int {1,2,3} 數字= append(數字,4、5、6)
numbers := make([]int, 0, 100)有效-GO
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3