Enum

5 respostas
M

enum’ should not be used as an identifier, since it is a reserved keyword from source level 5.0 on

galera, to tentando fazer um joguinho aki mas to tendo problemas
o seguinte erro eh informado pelo eclipse

segue o trecho do codigo

public class CincoMil
{
private Random objetodado = new Random(); //crie o objeto

private enum Status {CONTINUE, GANHOU, PERDEU};

enum cannot be resolved to a type

5 Respostas

M

Remove este modificador de acesso, outra coisa, qual compilador vc tá usando? java 1.4 ou 1.5? vê isso ai

M

removi o private e continuou o erro.
estou usando jre 1.5

M

codigo completo

package cincomil;
//programa que lança dados simulando o jogo de azar “craps”

import java.util.Random;
import javax.swing.*;

public class CincoMil
{
private Random objetodado = new Random(); //crie o objeto

enum Status {CONTINUE, GANHOU, PERDEU};//uso o recuro enumeracao constantes

/*Status eh um novo tipo do java2 da classe enum.

/* aqui criei variaveis constantes que os numero representa
a soma dos dois lados */

private final static int R1 = 2;

private final static int R2 = 3;

private final static int R7 = 7;

private final static int R11 = 11;

private final static int R12 = 12;

public void inicio() // inicia a brincadeira
{

int pontuacao = 0;

Status jogo; //aqui diz se continua, ganha ou perde.

int somadados = calculodados(); //recebe o valor do metodo que soma os dados

switch(somadados)

{

case R7:

case R11:

jogo = Status.GANHOU;

break;
case R1:

case R2:

case R12:

jogo = Status.PERDEU;

break;
default:

jogo = Status.CONTINUE;

pontuacao = somadados;

System.out.printf(Pontuacao:%d\n, pontuacao);

break;

}
while (jogo == Status.CONTINUE)

{

somadados = calculodados();
if(somadados == pontuacao)

jogo = Status.GANHOU; //ganhou por pontuacao.

else

if (somadados == R7)

jogo = Status.PERDEU; //perde se  tirar 7 antes da pontuação.

}
if (jogo == Status.GANHOU)

System.out.println(voce ganhou);

else

System.out.println(Voce Perdeu);

}

public int calculodados()
{

int dado1 = 1 + objetodado.nextInt(6);
int dado2 = 1 + objetodado.nextInt(6);

int soma = dado1 + dado2;

System.out.printf(A soma dos dados %d + %d = %d\n”, dado1,dado2,soma);

return soma;

}
M

atualizei pra jdk 5 e funcionou

B

O enum como vc tá usando ae só existe apartir do java 5, então até pra compilar vc tem que usar o JDK 1.5…

Criado 31 de julho de 2006
Ultima resposta 1 de ago. de 2006
Respostas 5
Participantes 3