List中存放了多个Map,想将List中的Map存放顺序重新排序

List中存放了多个Map,想将List中的Map存放顺序重新排序,第1张

package comcomparetest;

import javautilArrayList;

import javautilHashMap;

import javautilList;

import javautilMap;

public class Main {

public static void main(String[] args) {

Main mainTest=new Main();

mainTestsortMap();

}

public void sortMap(){

List<Map<Integer, Double>> maps=new ArrayList<Map<Integer, Double>>();

for(int i=0;i<10;i++){

HashMap<Integer, Double> map=new HashMap<Integer, Double>();

for(int j=0;j<2;j++){

mapput(j, Mathrandom());

}

mapsadd(map);

}

for(Map<Integer, Double> map:maps){

Systemoutprintln(getValue(map));

}

Systemoutprintln("");

Map<Integer, Double> currentMap;

for(int i=0;i<mapssize()-1;i++){

for(int j=0;j<mapssize()-i-1;j++){

if(getValue(mapsget(j))>getValue(mapsget(j+1))){

currentMap=mapsget(j+1);

mapsset(j+1, mapsget(j));

mapsset(j,currentMap);

}

}

}

for(Map<Integer, Double> map:maps){

Systemoutprintln(getValue(map));

}

}

public Double getValue(Map<Integer, Double> currentMap){

return currentMapget(0)+currentMapget(1);

}

}

insert返回一个pair

即ret是一个pair,

他的first是迭代器,他的位置是给定关键字元素的位置,

second是bool值

retsecond你加的是bool,应该不行的。

你的测试时怎么成功的,应该不行啊。

输入1

2

1

2

1

现在的map是

(1,

3)(2,

2)

输入2

ret返回pair(2的迭代器,bool)

retfirst(2的迭代器)->second(value++);

(1,3)(2,3)

以上就是关于List中存放了多个Map,想将List中的Map存放顺序重新排序全部的内容,包括:List中存放了多个Map,想将List中的Map存放顺序重新排序、关于c++中 map元素的排序、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9821788.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存