Question

public class C1 outils itératifs {            Liste LinkedList privée;            public static class NC1 {               ...            }            ...         x Iterator publique iterator () {               retourner list.iterator ();            }         }

mais couine Eclipse (à la ligne x-ed):

- The return type is incompatible with Iterable<NC1>.iterator()
- implements java.lang.Iterable<NC1>.iterator

Je ne comprends pas où l'erreur est. aider quelqu'un peut?

Était-ce utile?

La solution

Vous devez changer NC1 pour C1.NC1. Les compiles suivants:

import java.util.*;

public class C1 implements Iterable<C1.NC1> {
    private LinkedList<NC1> list;
    public static class NC1 {
    }

    public Iterator<C1.NC1> iterator() {
        return list.iterator();
    }
}

Vous pouvez import static yourpackage.C1.NC1.

Autres conseils

ce code compile très bien:

public class C1 implements Iterable<NC1> {
    public static class NC1 {
    }

    private LinkedList<NC1> list;

    public Iterator<NC1> iterator() {
        return this.list.iterator();
    }
}

, il doit y avoir une erreur dans une partie que vous omettez

EDIT:

après avoir vu l'autre réponse:

oui, je les importations d'automobiles en marche, vous avez donc besoin de cette ligne:

import com.yourpackage.C1.NC1;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top