Java:expression must be an arrray

Fermé
domxaline - Modifié par domxaline le 20/05/2012 à 16:12
 domxaline - 21 mai 2012 à 15:19
Bonjour,
mon prg suivante,s'affiche erreur suivante
"The type of the expression must be an array type but it resolved to int"
public class IntArray  
{ 
 public static void main (String[]args) 
 { 
  //declare an array of integers 
  int[]anArray=new int[3]; 
  //assign a value to each array element and print 
  for(int i=0;i<anArray.length[i];i++) 
  { 
   anArray[i]=i; 
   System.out.println(anArray[i]+"");    
  } 
  System.out.println(""); 
 } 
} 

la ligne 9 est:
for(int i=0;i<anArray.length[i];i++)
aidez moi svp

4 réponses

bizu53 Messages postés 1274 Date d'inscription samedi 30 août 2008 Statut Membre Dernière intervention 21 juin 2015 848
20 mai 2012 à 21:27
J'ajoute mon grain de sel parce que, bien que les réponses apportées soient bonnes, elles n'expliquent rien (ce que je trouve contraire au principe de l'"aide").

La raison est qu'il est nécessaire d'obtenir la longueur de anArray, d'où : anArray.length
La notation [i] serait utilisée pour accéder au i-ème élément mais l'attribut length d'une array est de type int, donc impossible à indexer.
1