"Impossible d'activer une valeur de type Chaîne pour le niveau de source ci-dessous .." Erreur dans Eclipse
J'utilise Eclipse pour développer un programme Java. J'ai eu de downgrade JRE et JDK de 1,7 x 1,6. Maintenant, tout est pointant vers 1.6.x (y compris l'installation de JRE et JDK de conformité).
Mais maintenant, Eclipse me donne toujours une erreur sur le switch
instruction, indiquant:
Ne peut pas basculer sur une valeur de type Chaîne de caractères pour le niveau de la source ci-dessous 1.7. Seulement convertibles valeurs int ou enum constantes sont autorisés
sur le code ci-dessous:
Switch("test") //Which is fine with 1.7.x
J'ai enlevé 1.7.x à partir de l'ordinateur, ne sais pas pourquoi il est toujours à la recherche pour 1,7 au lieu de 1,6?
source d'informationauteur Tony
Vous devez vous connecter pour publier un commentaire.
De commutation sur les cordes a été introduit dans Java 1.7!
Le message d'erreur est devrait lorsque vous passez à la version 1.6 de Java. Dans cette version vous pouvez basculer uniquement sur les types primitifs et les énumérations.
Liés à la question:
Clic droit sur votre projet, allez dans les Propriétés. Sélectionnez Compilateur Java dans le menu de gauche. Sélectionnez votre niveau de conformité (1.7 ou 1.6). 1.7 arrêtera de ce message. 1.6, comme d'autres ont dit avant, ne vous laissera pas utiliser de chaînes.
switch(String)
syntaxe est applicable à partir de Java 7 et suivantes. Parce que vous avez 1.6 qui ne prend pas en charge le commutateur(String), eclipse donnant erreur de compilation.Changement
switch(String)
àswitch(int)
En fait, votre code n'est pas valide sur 1.6. Vous ne pouvez pas faire un switch sur une Chaîne.
En Java 4 et avant que vous ne pourriez utiliser de l'interrupteur sur
boolean
char
short
byte
int
types.En Java 5 et 6, vous pouvez utiliser le commutateur sur
Enum
s en plus des types précédents.Et seulement Java 7 prend en charge l'interrupteur sur
String
s.J'ai fait face à la même question quand j'ai essayé de déployer à l'aide de l'outil Ant.
La solution qui a fonctionné pour moi a été: