我是靠谱客的博主 哭泣网络,这篇文章主要介绍iterator next有值hasnext却为false。是因为falsefor循环中嵌套iterator迭代器遍历是有问题的,现在分享给大家,希望可以做个参考。

 如下:注释的代码是有问题的。采用fori循环即可。

/**
         * 1、遍历主题list
         * 2、遍历模板list
         * 3、从总数据中找到匹配数据,进行重新封装
         */
        for (int i = 0; i < themeList.size(); i++) {
            TemplateRankingRsp.Series themeSeries = new TemplateRankingRsp.Series();
            themeSeries.setName(themeList.get(i));
            List<Integer> numList = new ArrayList<>();
            for (int j = 0; j < templateList.size(); j++) {
                numList.add(null);
                for (int n = 0; n < templateRankingDtoList.size(); n++) {
                    TemplateRankingDto templateRankingDto = templateRankingDtoList.get(n);
                    if (templateRankingDto.getThemeName().contains(themeList.get(i)) && templateRankingDto.getTemplateName().equals(templateList.get(j))) {
                        numList.set(j, templateRankingDto.getNum());
                        templateRankingDtoList.remove(n);
                        break;
                    }
                }
//                while (iterator.hasNext()) {
//                    TemplateRankingDto next = iterator.next();
//                    if (next.getThemeName().contains(themeList.get(i)) && next.getTemplateName().equals(templateList.get(j))) {
//                        numList.set(j, next.getNum());
//                        iterator.remove();
//                        break;
//                    }
//                }
            }
            themeSeries.setData(numList);
            series.add(themeSeries);
        }

 

最后

以上就是哭泣网络最近收集整理的关于iterator next有值hasnext却为false。是因为falsefor循环中嵌套iterator迭代器遍历是有问题的的全部内容,更多相关iterator内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(151)

评论列表共有 0 条评论

立即
投稿
返回
顶部