map容器基本概念
map容器的构造和赋值
#include<map>
void printfMap(map<int, int> &m)
{
for (map<int, int> ::iterator it = m.begin(); it != m.end(); it++)
{
cout << "key的值: " << it->first << " value的值: " << it->second << endl;
}
cout << endl;
}
void test01()
{
map<int, int> m1;
m1.insert(pair<int, int>(1, 3));
m1.insert(pair<int, int>(4, 4));
m1.insert(pair<int, int>(2, 5));
m1.insert(pair<int, int>(5, 5));
printfMap(m1);
map<int, int> m2(m1);
printfMap(m2);
}
map容器的大小和交换
#include<iostream>
using namespace std;
#include<map>
void printfMap(map<int, int> &m)
{
for (map<int, int> ::iterator it = m.begin(); it != m.end(); it++)
{
cout << "key的值: " << it->first << " value的值: " << it->second << endl;
}
cout << endl;
}
void test01()
{
map<int, int> m1;
m1.insert(pair<int, int>(1, 3));
m1.insert(pair<int, int>(1, 4));
m1.insert(pair<int, int>(2, 5));
m1.insert(pair<int, int>(5, 5));
printfMap(m1);
if (m1.empty())
{
cout << "m1为空" << endl;
}
else
cout << "m1的大小为: " << m1.size() << endl;
map<int, int> m2;
m2.insert(pair<int, int>(1, 4));
m2.insert(pair<int, int>(1, 56));
m2.insert(pair<int, int>(2, 3));
m2.insert(pair<int, int>(5, 6));
printfMap(m2);
cout << "交换后-------" << endl;
m1.swap(m2);
printfMap(m1);
printfMap(m2);
}
map容器的插入和删除
#include<iostream>
using namespace std;
#include<map>
void printfMap(map<int, int> &m)
{
for (map<int, int> ::iterator it = m.begin(); it != m.end(); it++)
{
cout << "key的值: " << it->first << " value的值: " << it->second << endl;
}
cout << endl;
}
void test01()
{
map<int, int> m1;
m1.insert(pair<int, int>(1, 3));
m1.insert(pair<int, int>(3, 4));
m1.insert(pair<int, int>(2, 5));
m1.insert(pair<int, int>(5, 5));
printfMap(m1);
m1.erase(m1.begin());
m1.erase(5);
printfMap(m1);
m1.clear();
}
map容器的查找和统计
#include<iostream>
using namespace std;
#include<map>
void printfMap(map<int, int> &m)
{
for (map<int, int> ::iterator it = m.begin(); it != m.end(); it++)
{
cout << "key的值: " << it->first << " value的值: " << it->second << endl;
}
cout << endl;
}
void test01()
{
map<int, int> m1;
m1.insert(pair<int, int>(1, 3));
m1.insert(pair<int, int>(3, 4));
m1.insert(pair<int, int>(2, 5));
m1.insert(pair<int, int>(5, 5));
printfMap(m1);
map<int, int>::iterator it = m1.find(4);
if (it != m1.end())
{
cout << "找到了" << it->first << " " << it->second << endl;
}
else
{
cout << "没找到" << endl;
}
int num = m1.count(3);
cout << "key为3的个数是: " << num << endl;
m1.clear();
}