本文介绍: 4.foreach遍历.遍历链表weekList,用QString类型变量 s 临时存放里面元素.这也正好印证了QStringList里面存放的元素是QString类型.5.使用STL风格迭代访问.for循环中,只要迭代没有指向链表最后一个元素的下一个位置(end()),就继续往后读(++it).8.insert(): 往链表插入元素.参数:指定插入链表的位置,指定插入的QString类型字符串.3.for遍历链表.使用函数 at(),传入的参数就是元素的位置.下表需要从0数起.

容器 QStringList是一个字符串链表,里面存放的是QString类型的元素.下面是QStringList链表的一些常见用法.

1.在QStringList中添加元素.

    QStringList weekList;
    weekList<<"星期一"<<"星期二"<<"星期三";

2.在链表尾部添加元素.

    weekList.append("星期天");//在链表尾部添加

3.for遍历链表.使用函数 at(),传入的参数就是元素的位置.下表需要从0数起.

    for(int i=0;i<weekList.size();i++){
        qDebug()<<weekList.at(i);
    }

4.foreach遍历.遍历链表weekList,用QString类型变量 s 临时存放里面的元素.这也正好印证了QStringList里面存放的元素是QString类型.

    foreach(QString s,weekList){
        qDebug()<<s;
    }

5.使用STL风格迭代访问.for循环中,只要迭代没有指向链表的最后一个元素的下一个位置(end()),就继续往后读(++it).

    QStringList::iterator it = weekList.begin();//把迭代定位到链表开始的位置
    for(;it!= weekList.end();++it){
        qDebug()<<*it;
    }

6.java风格迭代访问.

QListIterator是字符串链表的迭代器,存放QString类型元素.hasNext():当前位置的下一个位置是否存在元素;next():因为初始位置不是第一个元素,而是第一个元素的前一个位置,所以需要往后偏移一位.

    //QListIterator:字符串链表的迭代器,元素是QString类型.
    QListIterator<QString> itr(weekList);
    while(itr.hasNext()){//后面还有元素就执行
        qDebug()<<itr.next();//next()原因:初始位置不是第一个元素.是第一个元素的前面.
    }

7.contains() QStringList链表中是否存在某个元素.

qDebug()<<"链表中有星期八:"<<weekList.contains("星期八");//不存在 false

8.insert(): 往链表中插入元素.参数:指定插入链表的位置,指定插入的QString类型字符串.

prepend(): 在链表头部插入元素.

weekList.insert(0,"星期零");    //0则表示头部插入
//weekList.prepend("星期零");   //头部插入

9.append() 链表尾部插入元素

weekList.append("星期八");

10.removeFist()删除头元素

    weekList.removeFirst();

11.removeLast()删除尾元素.

    weekList.removeLast();

12.removeOne()删除某个元素

    weekList.removeOne("星期一");

13.removeAt()删除定位置的元素.

    weekList.removeAt(0);

14.clear()清空整个链表.

    weekList.clear();

all~~

原文地址:https://blog.csdn.net/qq_55359819/article/details/134612490

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_13287.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注