java.util.Itérateur, mais ne peut pas importer java.util.Itérateur
Étant donné ce Code
import java.util.Iterator;
private static List<String> someList = new ArrayList<String>();
public static void main(String[] args) {
someList.add("monkey");
someList.add("donkey");
//Code works when I change Iterator to java.util.Iterator, but import
//is not possible?
for(Iterator<String> i = someList.iterator(); i.hasNext(); ) {
String item = i.next();
System.out.println(item);
}
}
Je reçois l'erreur: Le type d'Itérateur n'est pas générique; il ne peut pas être paramétrée avec des arguments
Eclipse me dit que l'import java.util.Itérateur est en conflit avec un type défini dans le même fichier.
- Pourquoi riez-vous? Avez-vous votre propre
Iterator
type? - C'est un parfaitement question valable, depuis
Iterator<T>
est défini pour accepter un paramètre générique. - pas du tout une question stupide @Mifmif, surtout depuis que s'il en a une, qui serait à l'origine de cette erreur.
- Vous êtes correct. Il est évident que l'OP a un basé sur ce que son/son éclipse, c'est dire. - ... l'import java.util.Itérateur est en conflit avec un type défini dans le même fichier. C'est censé être l'indicateur à droite.
- Eh bien... l'instruction d'importation est juste au dessus de ce fichier. N'est-il pas de montrer que l'OP est certainement l'aide de la norme Itérateur (ou a été que récemment ajouté)?
- pas de. Les Classes locales pour le projet (c'est écrit à la main) avec le même nom de remplacer les importations. Par conséquent, il est nécessaire d'indiquer le itérateur est souhaitée
- Ensuite, essayez
for(java.util.Iterator<String> i ...
et de nous donner de la rétroaction. - Remarque: vous pouvez faire la même chose comme ceci for(String s: someList) {}
- Ne pouvait-il pas être causée par une confusion installer, tels Eclipse est fixé à un niveau de langue 1.5+, mais le JDK pot il sait à ce sujet est de 1,4?
- Ce ne serait pas pour expliquer la
The import java.util.Iterator conflicts with a type defined in the same file
message. - Ah, c'est vrai, je n'avais pas remarqué que la deuxième erreur.
Vous devez vous connecter pour publier un commentaire.
La seule façon que je peux obtenir ces deux exactes des erreurs est d'appeler ma classe
Iterator
. Je suppose que ce serait une erreur facile à faire si vous écriviez un peu de la classe de test sur itération:Solution: ne pas le faire. Appeler quelque chose d'autre.
Autant de plaisir que c'est pour essayer de deviner ce que votre code ressemblait, tu avais posté tout un exemple dans votre question, cela aurait été un court-circuité le processus. Je ne suis pas exclure qu'il y a un autre exemple de code qui produit ces erreurs, bien que je n'ai pas réussi à en trouver un avec un peu d'expérimentation.
java.util.Iterator
. Cette question est des ordures.vérifier votre déclaration d'importation bon
il peut être possible que vous ayez déjà de l'importation itérateur qui vient d'une autre paquets d'abord organiser vos importations
supprimer ces importations et
ajouter
espère que ça fonctionne pour vous
The import java.util.Iterator conflicts with a type defined in the same file
message?