Erreur de syntaxe, "pour chaque" que les états ne sont disponibles que si au niveau de la source est de 1,5 ou plus
La réception de l'erreur ci-dessous:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Syntax error, 'for each' statements are only available if source level is 1.5 or greater at Tuto.OneDimArrays.main(OneDimArrays.java:14)
CODE:
public class OneDimArrays {
public static void main(String[] args) {
int[] xabc = new int[5];
xabc[2]=20;
xabc[0]=50;
for(int temp:xabc){
System.out.println(temp);
}
}
}
S'il vous plaît aider..
- Il signifie ce qu'il dit.
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez Eclipse IDE puis cliquez droit sur le projet, allez dans les propriétés, un Compilateur Java, cochez la Case Activer paramètres spécifiques d'un projet et de définir le Compilateur de conformité supérieur à 1,5. J'ai résolu ce problème par la mise à 1.6.
Espérons que cela aide
L'erreur vous indique exactement quel est le problème. Vous êtes à l'aide d'une boucle for-each:
Cette syntaxe n'a été ajouté dans Java 1.5, alors vous apparaître à la compilation à l'aide d'une version antérieure. Sans savoir quel IDE/environnement que vous utilisez, je ne peux pas vous dire comment résoudre ce problème, mais de voir si vous pouvez trouver un moyen de compiler votre code à l'aide d'un plus up-to-date de la version de java.
Remarque qu'il existe une différence entre le JRE (Java Runtime Environnement) et le JDK (Java Development Kit). Le JRE est utilisé pour exécuter des programmes java sur votre ordinateur, tandis que le JDK est utilisé pour écrire des programmes java sur votre ordinateur. Normalement, votre système ne vous avertit lorsque le JRE est obsolète (comme la plupart des utilisateurs d'ordinateurs ne pas écrire de code et probablement n'avez même pas le JDK installé). Par conséquent, même si votre environnement JRE est jusqu'à ce jour, vous ne serez pas en mesure de compiler les dernières fonctionnalités, sauf si vous avez le droit de JDK.
Si vous utilisez une ancienne version de JDK, vous pouvez télécharger la dernière version ici.
Si vous utilisez un up-to-date de JDK, vous devez modifier certains paramètres de votre projet afin de l'utiliser.
Si, pour quelque raison que ce soit, aucune de ces sont une option, vous pouvez émuler le pour-chaque boucle à l'aide de pré-1.5 constructions de langage. La plupart approche de base est décrite dans la réponse de Pat.
Compiler ce dans une version ultérieure de java si vous le pouvez.
Si vous ne parvenez pas à utiliser une version plus récente de java pour une raison quelconque il suffit d'utiliser un régulier pour la boucle: