天天看點

Iterator嵌套循環周遊疊代

Iterator嵌套循環周遊疊代

private void filterMengGameById(List<Game> games,List<Long> gameIds){
        if (CollectionUtils.isEmpty(gameIds) || CollectionUtils.isEmpty(games)){
            return;
        }
        //擷取疊代器
        Iterator<Game> gameIterator = games.iterator();
        while (gameIterator.hasNext()){
            Game game = gameIterator.next();
            //擷取疊代器
            Iterator<Long> idIterator = gameIds.iterator();
                while (idIterator.hasNext()){
                    Long id = idIterator.next();
                    if (game.getGameId().equals(id)){
                        idIterator.remove();
                    }
            }
        }
    }           

注意:

1、擷取疊代器的位置一定要放對地方

2、外循環一次,内循環完所有次數

繼續閱讀