Quien me ayuda con mi programa,me tira un error y no entiendo porque

Iniciado por Ila26, 3 Diciembre 2013, 19:51 PM

0 Miembros y 1 Visitante están viendo este tema.

Ila26

Saludos el error esta en la siguiente instrucion

Games ob1 = new Games();
        ob1 g;


aqui les dejo programa completo ;(

package samplegames;
class Ps4{
String console;
int category;

Ps4(String console,int category)
{
this.console=console;
this.category=category;

}
}
class Games{
String G[]={"Sport","RPG","Shooters","Clasics"};
int choice[]={0,1,2,3};

Ps4 getGames(int i){
if(i>=0 & i<G.length)
     return new Ps4(G[1],choice);
else
     return new Ps4("Ivalid",0);

}


}

public class SampleGames {

   
    public static void main(String[] args) {
        Games ob1 = new Games();
        ob1 g;

    g = ob1.getGames(1);
    System.out.println(g.console + " your choice " +g.choice);

    g = ob1.getGames(2);
    System.out.println(g.console + " your choice: " +g.choice);
    }
}

Trane!

No me lo termine de leer todo, pero aqui tienes un error y mirandolo por encima en los return tienes mas de uno y al declarar un nuevo objeto:

Código (java) [Seleccionar]
if(i>=0 & i<G.length)

para el and se utrilizan dos &&

Código (java) [Seleccionar]
if((i>=0) && (i<G.length))

Resalta tu codigo con la etiqueta CODE asi sera mas legible.

Zoik

Antes de nada decir que te revises bien el código porque tiene errores y pon el código con las etiquetas code como te a comentado Trane.

Bien, me lo e mirado por encima y el método getGames() te devuelve una instancia de la class Ps4, por tanto no puedes asignar a un objeto tipo Games, un objeto tipo Ps4, es decir que deberías cambiar la línea ob1 g; por:

Código (java) [Seleccionar]
Ps4 g;

Ni lo he depurado, ni lo e compilado ni e hecho nada, así que si me he equivocado lo siento.

Un saludo.