Qt中QMap的简单说明及使用

QMap的说明

QMap属于Qt中的一种类型,使用者可以存储一对值(Key,value),以此便可通过Key来找到与其对应的值value。
我觉得说简单点其实就是将值value与Key相互关联、一一对应。两个值可以是相同类型或者是不同类型,通过Map来将二者联系。

一些简单的使用方法

首先先将Key和value值添加进去

QMap<QString,int> m_Map;
//将value中的值插入至Key中的方法如下所示:
m_Map[“KeyType1”]=658;
m_Map[“KeyType2”]=659;

可以运算符[]插入也可使用函数insert插入。上下两种插入方法均可实现value值的插入。

m_Map.insert(“KeyType3”,953);//上下两种插入方法均可实现value值的插入。
m_Map.insert(“KeyType4”,955);

可以通过相应的Key值来找与其对应的value值。
将KeyType1和KeyType3所对应的两个value值分别赋给value1和value2并显示出来;

int value1 = m_Map[“KeyType1”];
int value2 = m_Map.value(“KeyType2”);
qDebug()<<" m_KeyType1->value1:"<< value1 ;
qDebug()<<" m_KeyType3->value3:"<< m_Map.value(“KeyType3”);

在这里插入图片描述

我们可以通过使用contain()函数来查找QMap中是否包含某项,包含则返回true,反之则为false

int content = 12580;
if(m_Map.contains(“XXS”))
content= m_Map.value(“XXS”);
qDebug()<<content:<<content;
content= m_Map.value(“XXS”,12580);
qDebug()<< “content:”<<content; //由于m_Map中并没有包含有"XXS",所以很明显以上两个输出结果是12580。
content= m_Map.value(“KeyType1”,30);
qDebug()<<content:<<content; //当m_Map中包含有KeyType1项则可以KeyType1所对应的值给显示出来。

在这里插入图片描述

QMap<QString,int>::iterator it;
for ( it = m_Map.begin(); it != m_Map.end(); it++ )
{
qDebug()<<it.key()<<it.value();
}

在这里插入图片描述
如上述代码所表示,便可以让it从m_Map的起点begin到终点end进行遍历。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值