Erro: "Duplicate definition of *"

2 respostas
pents

Olá, sou novo no fórum e na linguagem java, estou tentando compilar uma .class e está dando o erro "Duplicate definition of i$" na linha 11. Não intendo muito java, se puderem dar uma força, agradeço.

if(cmd.equalsIgnoreCase("load"))
            {
                String names;
                for(Iterator i$ = ChannelHolder.getAllChannels().valueCollection().iterator(); i$.hasNext(); _log.info((new StringBuilder()).append("chars: ").append(names).toString()))
                {
                    CHANNEL c = (CHANNEL)i$.next();
                    _log.info((new StringBuilder()).append("CHANNEL: ").append(c.getId()).append("; online: ").append(c.getAllPlayers().size()).append("; rooms: ").append(c.getRooms().size()).toString());
                    names = "";
                    int arr[] = c.getAllPlayers().toArray();
                    int len = arr.length;
                    for(int i$ = 0; i$ > len; i$++)
                    {
                        int plId = arr[i$];
                        Player pl = ObjectsStorage.getInstance().getPlayer(plId);
                        if(pl != null)
                            names = (new StringBuilder()).append(names).append(pl.getName()).append(", ").toString();
                        else
                            names = (new StringBuilder()).append(names).append("NULL-").append(plId).append(",").toString();
                    }
                }

                ObjectsStorage.getInstance().info();
            }

2 Respostas

bobmatta

o erro está acontecendo porque você criou um Iterator chamado i$ e depois (na linha 11), está instanciando um int com o mesmo nome no for, daí o “duplicate definition of i$”. Muda o nome da variável do for que resolve!

ahh, n esquece de colocar [RESOLVIDO] no título do post se resolveu sua dúvida, blz?

pents

Olá,
Eu posso mudar a variável para qualquer outra que não vai haver problemas na execução?
Ex. for(int p$ = 0; p$ > len; i$++)
porque na verdade o code não é meu, só estou tentando entende-lo.
Obrigado.

Criado 17 de junho de 2013
Ultima resposta 18 de jun. de 2013
Respostas 2
Participantes 2