您好,登錄后才能下訂單哦!
這篇文章主要介紹了SpringBoot中動態數組類vector有什么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
vector是個模板類,提供了動態數組的通用功能,特點如下:
(1)在數組末尾添加(刪除)元素所需的時間是固定的。
(2)在數組中間添加(刪除)元素所需的時間與該元素后面的元素個數成正比
(3)存儲的元素是動態的,而vector類負責管理內存。
下面給出了五種初始化(實例化)的方法:
#include<iostream>#include<vector>using namespace std;int main(){ //1.初始化一個動態數組dyarr1 vector <int> dyarr1;//2.初始化一個動態數組dyarr2,數組的初始長度是10 vector <int> dyarr2(10);//3.初始化一個動態數組dyarr3,包含10個元素,每個元素都是1 vector <int> dyarr3(10,1);//4.將動態數組dyarr3復制到dyarr4 vector <int> dyarr4(dyarr3);//5.使用迭代器,將dyarr4中的前5個元素復制到dyarr5 vector <int> dyarr5(dyarr4.begin(),dyarr4.begin()+5);for(int i=0;i<dyarr5.size();i++) cout<<dyarr3[i]<<endl;return 0;}
注意:vector <類型> dyarr //這里的類型不僅是int,也可以是float、類、vector等
//在數組dyarr1后添加一個元素50dyarr1.push_back(50)
push_back可以在末尾插入元素。如果要在中間插入元素,可以使用insert()
下面舉例三種插入方法:
#include<iostream>#include<vector>using namespace std;int main(){ vector <int> dyarr1(5,10);//1.在數組dyarr1前插入20 dyarr1.insert(dyarr1.begin(),20);//2.在數組dyarr1末尾插入兩個30 dyarr1.insert(dyarr1.end(),2,30);//3.將數組dyarr2插入到dyarr1第一個元素的后面(后面的元素依次后移) vector <int> dyarr2(2,50); dyarr1.insert(dyarr1.begin()+1,dyarr2.begin(),dyarr2.end());//顯示dyarr1的每一個元素for(int i=0;i<dyarr1.size();i++) cout<<dyarr1[i]<<">;}
pop_back將元素從vector末尾刪除所需的時間是固定的,不隨存儲元素的個數而變。
//刪除dyarr1最后一個元素dyarr1.pop_back();
#include<iostream>#include<vector>using namespace std;int main(){ vector <int> dyarr1(5,10); //初始化數組5個元素都是10 //1.用下標運算符[]以數組方式訪問for(int i=0;i<dyarr1.size();i++) cout<<dyarr1[i]<<" "; cout<<endl;//2.用成員函數at()訪問for(int i=0;i<dyarr1.size();i++) cout<<dyarr1.at(i)<<" "; cout<<endl;//3.使用迭代器意義訪問打印出來(類似于指針) vector <int>::iterator Locator=dyarr1.begin();while(Locator!=dyarr1.end()){ cout<<*Locator<<" ";++Locator;} return 0;}
deque類與vector類非常類似,但是支持在數組的開頭和末尾插入或刪除元素。
使用前需要包含頭文件:
#include <deque>
(1)使用push_back和pop_back在末尾插入和刪除元素
deque <int> dyarr1(5,10); //初始化數組5個元素都是10 dyarr1.push_back(100);dyarr1.pop_back();
(2)使用push_front和pop_front在開頭插入和刪除元素
dyarr1.push_front(100);//在數組開頭插入100dyarr1.pop_front();//刪除數組開頭的元素
感謝你能夠認真閱讀完這篇文章,希望小編分享的“SpringBoot中動態數組類vector有什么用”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。