QMap
一、
二、
void MainWindow::on_pushButton_clicked() { QMap<int,QString> map; //添加数据 map.insert(1,"1111"); map.insert(2,"2222"); map.insert(3,"3333"); //另一种添加数据方式,可以直接使用 map[4]="44444"; //读 QMap<int,QString>::iterator it; for( it = map.begin(); it != map.end(); ++it ) { qDebug()<<"key:"<<it.key(); qDebug()<<"value:"<<it.value(); } //直接key值读或修改 qDebug()<<"value 1:"<<map[1]; map[1]="aaaaaa"; qDebug()<<"value 1:"<<map[1]; //判断key值是否已经添加过 if(map.contains(3)) { map[3]="cccccc"; } else { map.insert(3,"333333"); } it=map.begin(); while(it!=map.end()) { qDebug()<<"key:"<<it.key(); qDebug()<<"value:"<<it.value(); it++; } //清除数据 map.clear(); //可以重新添加数据 map.insert(1,"111111"); }
QMap默认是按照key值升序排序的
QMap<int,float> test; test.insert(3,3.12f); test.insert(2,2.12f); test.insert(5,5.12f); test.insert(1,1.12f); test.insert(4,4.12f); test.insert(0,0.12f); QMap<int,float>::iterator it; for(it=test.begin();it!=test.end();++it) { qDebug()<<it.key()<<" "<<it.value(); } 0 0.12 1 1.12 2 2.12 3 3.12 4 4.12 5 5.12