qt5基础2
来源:互联网 发布:软件研发主管岗位职责 编辑:程序博客网 时间:2024/06/05 03:14
(1)字符串类
QString类保存16位Unicode值,提供丰富的操作、查询和转换等函数,还进行使用隐式共享,高效的内存分配策略。
操作字符串:
1、二元操作“+”;
2、QString::append()
3、QString::springf()
例 QString str;
str.sprintf(“%s”,”welcome”);
str.sprintf(“%s”,“to you!”);
str.sprintf(“%s %s”,”welcome “,”to you!”);
4、函数QString::arg()
QString str
str=QString(“%1 was born int %2.”).arg(“John”).arg(1982))’
5、QString还提供其他组合字符串的方法
1、insert()函数:2、prepend()函数;3、replace()函数;
6、去掉一个字符串两端的空白,如获取用户输入的账号时
1、QString::trimmed()函数.移除字符串两端的空白字符
2、QString::simplified()函数。移除字符串两端的空白字符,使用单个空格字符“”
查询字符串数据
(1)QString::startsWith()判断一个字符串是否以某个字符串开头
(2)QString::endsWith()判断字符串是否以某个字符串结尾
(3)QString::contains()判断一个指定的字符串是否出现过
QString str=“Welcome to you”
str.contains(“welcome”,Qt::CaseSensitive);//返回true
(4)比较两个字符串也是常用的功能,QString提供了多种比较手段.
operator<(>=)(const QString&);
(5)localeAwareCompare(const QString&,const QString&):静态函数,比较前后的字符串
(6)compare(const QString&,const QString&,Qt::CaseSensitivity) 该编码可以指定是否进行写的比较
字符串转换
(1)QString::toInt()函数将字符串转换为整型数值,类似的函数还有toDouble()、toFloat()、toLonge()、toLongeLong()等
QString str=”125”
bool ok;
int hex=str.toInt(&ok,16);将字符串转换为整型数值。ok=true hex=293;
(2)Qstring提供的字符编码集转换函数将会返回一个const char*类型的QByteArray类,具有一个字节数组,可以存储原始字节,也可以存储传统的以”\o”结尾的8位字符串。转换函数有:
toAscii():返回一个ASCII编码的8位字符串;
toLatin1():返回一个Latin-1(IOS8859-1)编码的8位字符串
toUtf8():返回一个UTF-8编码的8位字符串()UTF-8是ASCII的升级,支持挣个unicode字符集。
toLocal8bBit():返回一个系统本地(locale)编码的8位字符串
QString str=“welcome to you!”;QByteArray ba=str.toAscii();qDebug()<<ba;ba.append("HELLO WORLD!");qDebug()<<ba.data();//输出最后结果
NULL和空字符串(empty),一个NULL是一个空字符串,而一个空字符串不一定是一个NULL字符串;
容器类:
嵌套 QHash<QString ,QList<double> >//此处加空格
QHash的键类型是Qstring,它的值类型是QList。
QList,派生类有QItemSelection、QQueue、QStringList和QTestEventList。提供追加QList::append()和QList::prepend()函数。
QLinkedList是一个链式列表,以非连续的内存保存数据。
QLinkedList不能使用下标,只能使用迭代器访问它的数据项。对很大列表进行插入操作时,比Qlist具有更高的效率
QVector。可以用下标,也可以用迭代器访问。子类有QPolygon、QPolygonF和QStack。
- qt5基础2
- OpengGL 4.3 Qt5 数据基础
- VS2015+QT5.7基础配置
- QT5基础图形的绘制
- QT5串口通信——基础篇
- Qt5 自带 串口通讯基础模块
- QT5 基础使用helloworld及发布
- Qt5.2发布了
- QT5.2 IOS编程
- VC12 编译Qt5.2
- Qt5.2中文测试
- Qt5.2 + VS2010安装
- 安装Qt5.2 + vs2010
- Qt5.2+VS2010安装
- QT5 - 2 平面
- Qt5.2连接SQLServer2008
- Qt5.2连接SQLServer2008
- Qt5.2连接SQLServer2008
- chrome的拓展程序面板
- Android 开发中需要知道的注解基础
- java图片处理工具类
- javascript数据结构系列(一)-线性表
- Android 与 JS交互之取出 链接
- qt5基础2
- 【学习Lua】函数的多重返回值
- HDU
- Aptana Studio3安装方式
- ReactNative架构——iflux-native
- Centos安装gitlab安装
- Android通过外部浏览器调用微信H5支付,Android+PHP详解
- vue中watch和computed属性作用及区别
- 面试的时候应该怎么介绍自己(1)