美文网首页
Qt 数据结构

Qt 数据结构

作者: 静候那一米阳光 | 来源:发表于2017-12-22 00:15 被阅读0次

QList

#include <QList>

【Demo1】foreach

QList<int> list;
for(int i = 0 ; i < 10; i++)
{
    list.append(i);
}

list.removeOne(5);
foreach (int num, list) {
   qDebug()<<num;
}

【Demo2】QListIterator

QList<int> list;
for(int i = 0 ; i < 10; i++)
{
    list.append(i);
}

QListIterator<int> iter(list);
while(iter.hasNext()){
    qDebug()<<iter.next();
    if(iter.hasNext()){
        qDebug()<<"next..."<<iter.peekNext();
    }
}
iter.toBack();
while(iter.hasPrevious()){
    qDebug()<<iter.previous();
    if(iter.hasPrevious()){
        qDebug()<<"next..."<<iter.peekPrevious();
    }
}

【Demo3】QMutableListIterator

QList<int> list;
for(int i = 0 ; i < 10; i++)
{
    list.append(i);
}
QMutableListIterator<int> iter(list);
while(iter.hasNext()){
    int i=iter.next();
    if(i==5){//此时iter已经是下一个
        iter.remove();
    }
}
iter.toFront();
while(iter.hasNext()){
    qDebug()<<iter.next();
}

QLinkedList

#include <QLinkedList>

QLinkedList<int>list;
list<<1<<2<<3;
foreach (int i, list) {
    qDebug()<<i;
}

QMap

#include <QMap>
QMap<int,QString> map;
map.insert(1,"Bob");
map.insert(2,"Chad");
map.insert(3,"Mary");

foreach(int i,map.keys()){
    qDebug()<<i<<map[i];
}

QMapIterator<int,QString> iter(map);
while(iter.hasNext()){
    iter.next();
    qDebug()<<iter.key()<<iter.value();
}

QHash

#include <QHash>
QHash<int,QString> hash;
hash.insert(1,"Bob");
hash.insert(2,"Chad");
hash.insert(3,"Mary");
qDebug()<<"3="<<hash.value(3);
foreach(int i,hash.keys()){
    qDebug()<<i<<hash[i];
}

QHashIterator<int,QString> iter(hash);
while(iter.hasNext()){
    iter.next();
    qDebug()<<iter.key()<<iter.value();
}

QStringList

#include <QStringList>
QStringList list;
QString line="a,b,c,d,e";
list.append("Hello");
list=line.split(",");
list.replaceInStrings("b","batman");

QString after=list.join(";");
qDebug()<<after;
foreach(QString item,list){
    qDebug() <<item;
}

QSet

#include <QSet>
QSet<QString> set;
set.insert("one");
set.insert("one");
set.insert("one");
set.insert("two");
set.insert("three");
QSetIterator<QString> i(set);
while (i.hasNext())
    qDebug() << i.next();

qSort

QList<int> list;
list<<2<<3<<1<<0;
//qSort(list);
qSort(list.begin()+1,list.end()-1);
foreach(int i ,list){
    qDebug()<<i;
}

qCopy

QStringList list;
list<<"a"<<"b"<<"c"<<"d"<<"e";
QVector<QString> vect(3);
qCopy(list.begin()+1,list.end()-2,vect.begin()+1);
foreach(QString item ,vect){
    qDebug()<<item;
}

qFill

QVector<QString> vect(5);
//  qFill(vect,"hello world");
qFill(vect.begin()+1,vect.end()-1,"hello");
foreach(QString item ,vect){
    qDebug()<<item;
}

相关文章

  • Qt 数据结构

    QList 【Demo1】foreach 【Demo2】QListIterator 【Demo3】QMutable...

  • Fedora19 如何安装QT

    sudo yum install qt qt-devel qt-x11 qt-doc qt-demos qt-ex...

  • Qt Designer使用技巧

    编译Qt Designer 安装Qt时,选择安装源码 用Qt Creator打开C:\Qt\Qt5.5.0\5.5...

  • Qt 安装环境

    Qt 安装 1.1 QT下载地址 http://download.qt.io/archive/qt/ 1.1.1 ...

  • QT5.9+MSVC2015+OPENCV4.0.0搭建

    1.资源准备 QT Qt所有版本http://download.qt.io/archive/qt/我下载了QT5....

  • Qt5学习地址

    Qt 学习之路 2(1):序(Qt 学习之路 2(1):序) Qt 学习之路 2(2):Qt 简介(Qt 学习之路...

  • QT

    vs2019下QT环境搭建 下载qt5.14 https://download.qt.io/archive/qt[...

  • Qt

    qt source http://download.qt.io/official_releases/qt/6.0/...

  • qt配置基于vs2019

    qt download:https://download.qt.io/archive/qt/[https://do...

  • QT下载归档目录

    https://download.qt.io/archive/qt/[https://download.qt.io...

网友评论

      本文标题:Qt 数据结构

      本文链接:https://www.haomeiwen.com/subject/eqnzwxtx.html