View Full Version : [JAVA] errore stupido definizione dato enumerato
ho tentato di definire un tipo dato enumerato cosė:
public enum Direction { RIGHT ,UP ,LEFT ,DOWN};
ma in compilazione ottengo:
; expected
public enum Direction { RIGHT ,UP ,LEFT ,DOWN};
^
cosa dovrei fare? mi pare sia corretta la sintassi di dichiarazione..sono sicuro che č qualcosa di ovvio..ma non capisco cosa..grazie in anticipo! :)
^TiGeRShArK^
14-06-2008, 23:50
public enum Direction { RIGHT, UP, LEFT, DOWN }
cosė dovrebbe essere giusto...
mmmh...ho fatto copia incolla del codice che hai postato te ma mi dice
public enum Direction { RIGHT, UP, LEFT, DOWN }
^
illegal start of expression....
secondo me sbaglio da qualche altra parte...chiedo troppo se vi chiedo di postarmi una classe funzionante dove venga dichiarato un tipo dato del genere? mi basta che faccia quello...cosė la confronto con il mio codice...thanks!
Probabilmente l'errore č nel resto del codice della classe... potresti provare a postarne almeno un pezzetto?
^TiGeRShArK^
15-06-2008, 12:01
mmmh...ho fatto copia incolla del codice che hai postato te ma mi dice
public enum Direction { RIGHT, UP, LEFT, DOWN }
^
illegal start of expression....
secondo me sbaglio da qualche altra parte...chiedo troppo se vi chiedo di postarmi una classe funzionante dove venga dichiarato un tipo dato del genere? mi basta che faccia quello...cosė la confronto con il mio codice...thanks!
...l'hai messo all'interno della classe... vero? :stordita:
comunque questo č l'esempio funzionante preso dal relativo trail della sun:
import java.util.*;
public class Card {
public enum Rank { DEUCE, THREE, FOUR, FIVE, SIX,
SEVEN, EIGHT, NINE, TEN, JACK, QUEEN, KING, ACE }
public enum Suit { CLUBS, DIAMONDS, HEARTS, SPADES }
private final Rank rank;
private final Suit suit;
private Card(Rank rank, Suit suit) {
this.rank = rank;
this.suit = suit;
}
public Rank rank() { return rank; }
public Suit suit() { return suit; }
public String toString() { return rank + " of " + suit; }
private static final List<Card> protoDeck = new ArrayList<Card>();
// Initialize prototype deck
static {
for (Suit suit : Suit.values())
for (Rank rank : Rank.values())
protoDeck.add(new Card(rank, suit));
}
public static ArrayList<Card> newDeck() {
return new ArrayList<Card>(protoDeck); // Return copy of prototype deck
}
}
http://java.sun.com/j2se/1.5.0/docs/guide/language/enums.html
ve la posto tutta tanto ero all'inizio e non c'č quasi niente dentro..deve essere qualche cosa stupida che mi sfugge (data la mia inesperienza)
import java.io.*;
import java.util.*;
public class PacManBehavior extends Behavior{
public enum Direction {RIGHT, UP, LEFT, DOWN }
public int getNewX(){
return 0;
}
public int getNewY(){
return 0;
}
}
ma stai usando java 5, vero?
javac -version
con javac -version mi dice che č un invalid flag, se faccio java -version mi restituisce :
java version 1.4.2_17
java(TM) 2 runtime environment, standard edition (build 1.4.2_17-b06)
java hotspot(TM) client VM (build 1.4.2_17-b06, mixed mode)...
^TiGeRShArK^
15-06-2008, 12:44
con javac -version mi dice che č un invalid flag, se faccio java -version mi restituisce :
java version 1.4.2_17
java(TM) 2 runtime environment, standard edition (build 1.4.2_17-b06)
java hotspot(TM) client VM (build 1.4.2_17-b06, mixed mode)...
e direi che č questo il problema...
stai usando una versione di java del neolitico, mentre le enum sono supportate solo da java 5 in poi...
Scaricati l'ultima versione, ovvero la 6.
oh no...XD....porca miseria ho scaricato il pacchetto dal sito della sun senza controllare che versione fosse...era il primo linkato su google..:P...e dire che non č la prima volta che lo scarico!...ecco perchč di tanti errori del cavolo...eh grazie mille! :):):)
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.