學習新時代程式語言Rust 15再放裡一條褲子

2021-09-28 15:27:21 字數 806 閱讀 5939

編寫好後 我們執行看下效果。

這裡報了個錯誤,錯誤提示我們變數v是不可變的但我們卻要改變它。我們忘記使用mut關鍵字了吧?我們新增mut關鍵字,再執行看下效果。

這次執行成功了,從輸出的結果我們可以看出:剛建立時vector的長度和容量一樣都是2, 因為我們在建立時就放裡了倆個元素。當往裡放了第三個元素後,長度和容量就不一樣了,長度是3容量變成了4,這說明vector內部已經重新建立了個陣列。隨著往裡放的元素越來越多,vector的容量也越來越大,從這裡的2,4,8,16我們可以看出每次擴容都是增大了一倍。

接下來我們在使用with capacity方法建立乙個vector. 我們往裡放從1到9 共9個元素所以我們設定容量為10當然設定為9也可以。我們再執行看下效果,這裡提示找不到vector,這是因為我們應該用簡寫vec而不應該用vector. 修改好後儲存退出,再執行看下效果。

這次輸出的capacity都是10,也就是vector內部沒有發生頻繁的建立陣列移動資料。

大家可以自己復現下**,感受一下。

51cto學院:

學習新時代程式語言Rust 9迴圈語句

上一期我們學習並練習了rust的復合基本資料型別,在練習中我們定義了乙個陣列用於儲存月份的中文名稱,現在有乙個需求,需要把月份的中文名按順序列印到控制台,也就是把months陣列裡的所有元素按順序輸出到控制台 當然我們可以使用12條println語句一條一條獲取並列印months中的元素,現在是乙個...

學習新時代程式語言Rust 16使用編號提取褲子

上一期我們使用vector做為乙個可變容量的箱子存放褲子,為了便於區分褲子還給褲子新增上了編號。小胖現在想使用編號從箱子裡獲取褲子該怎麼辦呢?是不是可以編寫乙個for迴圈遍歷箱子中的每一條褲子,如果褲子的開頭編號跟我們需要的編號一致就返回這條褲子。我們編寫 實現下。這裡我們使用字串的starts w...

選擇學習新程式語言的技巧

我經常被人問道 在開發工作中你是如何選擇使用哪種程式語言的呢?這是乙個合乎情理的問題,特別是對於那些在開發領域只有極少或者沒有的經驗的人而言。直接了當地說 使用某某語言。對我來說是乙個巨大的 但我還是認為解釋如何思考選擇工作所用的語言會更好一些。當你考慮學習哪種程式語言的時候,你需要問自己下列5個問...