2010-09-26 4 views
1

D'accord, donc je suis en train de faire ce travail de classe:Java Arraylist Aide

public boolean hasPoint(Point p){ 

    for (int i=0; i<this.points.size(); i++){ 
     // Right here 
     if(points[i].equals(p)){ 
      return true; 
     } 

    } 
    return false;  
} 

Cependant, sur la ligne 3 me semble être appeler des points comme un tableau, mais il est en fait un arraylist. Qu'est-ce que je fais mal?

+0

S'il vous plaît ne pas éditer le message , J'ai déjà corrigé le formatage de votre code. Pour référence, la prochaine fois il suffit de surligner votre code et cliquez sur le bouton de code (celui avec des zéros et des uns); ou indent avec 4 espaces. – NullUserException

+0

@NullUserException, je ne l'ai jamais introduit, seule chose que j'avais édité était le code change. –

+0

@Anthony je vois. Vous travailliez sur une révision précédente du poste. Ma faute. – NullUserException

Répondre

5

Pour accéder aux éléments d'un ArrayList, utilisez .get():

public boolean hasPoint(Point p){ 

    for (int i=0; i<this.points.size(); i++){ 
     if (points.get(i).equals(p)){ 
      return true; 
     } 
    } 

    return false;  
} 

Mais si points est un ArrayList, vous pouvez simplement utiliser ArrayList.contains() dans le même sens:

public boolean hasPoint(Point p) { 
    return points.contains(p); 
}