QMap<QString, QStringList>的增删改查
时间: 2023-07-19 07:24:24 浏览: 219
QT的增删改查
QMap<QString, QStringList> 是一个键为 QString 类型、值为 QStringList 类型的 QMap,它可以用来存储一组键值对,其中每个键对应一个字符串列表。下面是 QMap<QString, QStringList> 的增删改查操作:
1. 添加元素
使用 [] 运算符添加元素,示例如下:
```
QMap<QString, QStringList> cityAttractions;
cityAttractions["Beijing"] << "Great Wall" << "Forbidden City" << "Summer Palace";
```
上面的代码向 cityAttractions 中添加了一个键为 "Beijing",值为字符串列表 "Great Wall"、"Forbidden City" 和 "Summer Palace" 的元素。
2. 删除元素
使用 remove() 方法删除元素,示例如下:
```
cityAttractions.remove("Beijing");
```
上面的代码删除了键为 "Beijing" 的元素。
3. 修改元素
可以使用 [] 运算符修改元素,示例如下:
```
cityAttractions["Shanghai"] << "The Bund" << "Yu Garden" << "Oriental Pearl Tower" << "Shanghai Tower";
```
上面的代码向键为 "Shanghai" 的元素中添加了一个新的景点 "Shanghai Tower"。
4. 查找元素
使用 contains() 方法查找某个键是否存在于 QMap 中,示例如下:
```
if (cityAttractions.contains("Beijing")) {
QStringList attractions = cityAttractions["Beijing"];
qDebug() << "Attractions in Beijing: " << attractions;
}
```
上面的代码首先使用 contains() 方法判断键 "Beijing" 是否存在于 QMap 中,如果存在,则获取对应的字符串列表,并输出所有的景点名称。
如果需要遍历 QMap<QString, QStringList> 中的所有键值对,可以使用 QMap 的迭代器来实现。例如,使用 constBegin() 和 constEnd() 方法获取 QMap 的迭代器,然后使用 key() 和 value() 方法来获取键和值。
阅读全文