容器类

来源:互联网 发布:软件默认安装路径 编辑:程序博客网 时间:2024/05/16 05:43

1、QList

//例子1#include<QDebug>int main(int argc, char *argv[]){    QList<QString> list;    QString str = "this is a test String"    list<<str;     //添加到List中    qDebug<<list[0]<<"How are you";  //输出"this is a test String How are you"    return 0;}
//例子2#include <QDebug>int main(int argc,char *argv[]){    QList<int> list;    list<<1<<2<<3<<4<<5;    QListIterator<int> i(list); //获取迭代器    for(;i.hasNext();)        qDebug()<<i.next();  //获取下一个值    return 0;}
//例子3#include <QDebug>int main(int argc,char *argv[]){    QList<int> list;    for(int j=0;j<10;j++)        list.insert(list.end(),j);  //在末尾插入数据    QList<int>::iterator i;    //begin()返回迭代器    for(i=list.begin();i!=list.end();++i)    {       qDebug()<<(*i);       *i=(*i)*10;    }    QList<int>::const_iterator ci;    //constBegin()返回常量型迭代器,所以不能进行修改    for(ci=list.constBegin();ci!=list.constEnd();++ci)        qDebug()<<*ci;    return 0;}

2、QMap

#include <QDebug>int main(int argc,char *argv[]){    QMap<QString,QString> map;    map.insert("beijing","111");    map.insert("shanghai","021");    map.insert("nanjing","025");    QMapIterator<QString,QString> i(map); //只读迭代器    for(;i.hasNext();)        qDebug()<<"  "<<i.key()<<"  "<<i.next().value();    QMutableMapIterator<QString,QString> mi(map);  //读写迭代器    if(mi.findNext("111"))        mi.setValue("010");    QMapIterator<QString,QString> modi(map);    qDebug()<<"  ";    for(;modi.hasNext();)        qDebug()<<" "<<modi.key()<<"  "<<modi.next().value();    return 0;}
0 0