另一个名字另一个好
SomeName OtherFine
我想创建一个列表
,以便创建一个名称列表和对他们的罚款总额
public List<Map<String, Integer>> calculateTotalFine(){
List<Map<String, Integer>> myMapList = new ArrayList<Map<String, Integer>>();
ListIterator<CrimeInfo> crimeIterator = list.listIterator();
while(crimeIterator.hasNext()){
String key = crimeIterator.next().getName();
Integer value = crimeIterator.next().getFine();
if(myMapList.isEmpty()){
Map<String, Integer> aMap = new HashMap<String, Integer>();
aMap.put(key, value);
myMapList.add(aMap);
}
else{
Iterator<Map<String, Integer>> mapIterator = myMapList.iterator();
while(mapIterator.hasNext()){
if(mapIterator.next().containsKey(key)){ //<-- Line no. 29
Integer newFine = mapIterator.next().get(key) + value;
mapIterator.remove();
Map<String, Integer> nMap = new HashMap<String, Integer>();
nMap.put(key, newFine);
myMapList.add(nMap);
}
else{
Map<String, Integer> newMap = new HashMap<String, Integer>();
newMap.put(key, value);
myMapList.add(newMap);
}
}
}
}
return myMapList;
}
有人能告诉我哪里出了问题吗?
问题是,您正在迭代mymaplist
,但在迭代时却修改了它:
myMapList.add(newMap);
我仍然没有完全理解您正在尝试做什么,但从根本上说,在迭代集合时,您不应该添加到集合中。一种常见的方法是创建一个在迭代过程中修改的新集合,然后(如果需要)在此之后对原始集合执行批量修改。
(正如Titus所说,您还在循环中调用next()
两次...您需要更加注意如何使用迭代器,并在可能的情况下使用增强型for循环。)
在寻找这个问题的答案时,我也遇到过类似的利用LINQ的方法,但是我还不能完全理解它们(并因此实现它们),因为我对它还不熟悉。基本上,我想说的是: 检查列表的任何元素是否包含特定字符串。 如果是,则获取该元素。 老实说,我不知道该如何着手做那件事。我能想出的是这个(当然不工作): 我知道为什么它不起作用: 不返回,因为它将检查列表的整个元素是否与我指定的字符串匹配 不会找到匹配项,因为它将再次检查与
问题内容: 我需要枚举包中的所有类并将它们添加到列表中。单个类的非动态版本如下所示: 如何动态地将所有类添加到包及其所有子包中? 问题答案: 有关更加健壮和功能丰富的类路径扫描器,请参见https://github.com/classgraph/classgraph。我建议您先阅读我的代码片段以获得高水平的理解,然后再使用lukehutch的工具进行生产。
问题内容: 我试图将字符串数组作为参数传递给Wetland类的构造函数;我不明白如何将字符串数组的元素添加到字符串数组列表。 问题答案: 您已经具有内置方法:- 注 : -您应该使用没有。 返回一个不同的-> ,不能将其类型转换为。 然后,您将不得不使用方法,这不是很好。所以就用 注意 :-返回的列表是固定大小的列表。如果要向列表中添加某些内容,则需要创建另一个列表,并用于向其中添加元素。所以,那
我有一个类型的变量,其中item如下所示: 我想将其重新排序为,其中键是customerId,然后值是具有该客户ID的所有项的列表。
我从消防队拿到了我的文件。目前我在列表中有以下内容: 然后,在下面的方法中,我转换这个列表以放入一个具有所需格式的地图。
如何将字符串映射到列表,并将列表映射到字符串? 考虑到我们有以下班级 在Dozer和Orika中,我们可以使用以下代码行轻松映射 如何在MapStruct中进行相同类型的映射?在哪里可以找到有关mapstruct的更多示例?