一.
QVector容器是一个动态数组,可以容纳任意数量的元素,在相邻的内存中存储给定的数据类型作为一组数据,在QVector前部或中间位置插入元素都会导致内存中大量的数据元素移动,这使得操作速度会减慢.可使用迭代器对这组数据进行访问.
和其他的容器类型类似,QVector容器的功能也有添加元素append(),删除元素remove(),修改元素replace(),查询contains(),访问.......
vStarts<<"鹿晗"<<"热巴"; //添加(尾部插入)
vStarts.append("杨紫"); //头部插入
vStarts.prepend("Anglebaby"); //尾部插入
vStarts.insert(2,"小明"); //指定位置插入
vStarts.replace(2,"迪丽热巴");//替换
//删除元素下标为0的元素
vStarts.remove(0);
//删除某个元素
vStarts.removeAll("鹿晗"); //移除所有比较结果相同的元素
vStarts.removeAt(0); //移除指定位置的元素
vStarts.removeOne("杨紫"); //移除比较结果相同的第一个元素
vStarts.clear();删除所有元素
qDebug()<<"是否有小明?:"<<vStarts.contains("小明");//查询是否有该元素
使用迭代器访问数据.
1.
java风格迭代器
//java风格只读迭代
QVectorIterator<QString> it_sr(vStarts);
for(it_sr.toFront();it_sr.hasNext();){
qDebug() << it_sr.next();
}
//java风格读写迭代
QMutableVectorIterator<QString> it_srw(vStarts);
for(it_srw.toFront();it_srw.hasNext();){
QString s = it_srw.next();
//方式1.使用QString类型的compare()方法比较字符串.比较结果相同则返回0(假