Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: stevito en 03 de Diciembre 2014, 04:06
-
Hola colegas, buenas noches, me gustaria saber como se puede hacer para que al declarar que el discomusical no es digital || false, en lugar que en la consola diga "falso" que diga "no es digital"
Creo que se usa if pero no estoy seguro y no se como usarlo.
public class DiscoMusical{
private String titulo;
private String autor;
private int anioedicion;
private boolean digital;
public DiscoMusical(){
titulo = "";
autor = "";
anioedicion = 0;
digital = true || false;
}
public void setTitulo (String valorTitulo){
titulo = valorTitulo;
}
public void setAutor (String valorAutor){
autor = valorAutor;
}
public void setAnioedicion (int valorAnioedicion){
anioedicion = valorAnioedicion; }
public void setDigital (boolean valorDigital){
digital = valorDigital;
}
public String getTitulo(){
return titulo;
}
public String getAutor(){
return autor;
}
public int getAnioedicion(){
return anioedicion;
}
public boolean getDigital(){
return digital;
}
}
A proposito, esto lo codifique en blueJ
-
Hola stevito.
Antes de nada me gustaría hacerte una indicación. En general tu solución al ejercicio esta correctamente planteada, excepto por un pequeño error que hay en el constructor. Cuando inicializas la variable o atributo "digital", debes inicializarlo con un único valor, o es true, o es false... pero no los dos. No puedes utilizar un operador de comparación directamente para asignar un valor a una variable. Habría que crear una sentencia condicional, y si se da un caso se aplica un valor, y si se da otro distinto se aplica otro valor. No voy a entrar más en detalle porque el curso te lo explicará muy bien cuando avances un poco más, ya lo verás ;). Simplemente en este caso en particular, ya que inicias el resto de variables "vacias" o a cero, lo más apropiado seria iniciar esa variable como false. Más adelante también verás como crear un constructor con parámetros, y podrás iniciar todos los atributos con los valores que tú quieras o que sean necesarios para tú código.
Sobre tú duda... no sé si es correcto proponerte una solución a ella en el punto del curso en el que te encuentras, porque tendría que utilizar el método Main, declarar e inicializar el constructor y después llegaríamos a la sentencia condicional. Y creo que te crearía más dudas jejeje. Sin embargo te puedo poner un pseudocódigo para que veas por donde van los tiros:
If digital = true then
{
Imprimir por consola("El disco es digital");
}
else
{
Imprimir por consola("El disco no es digital");
}
Recuerda, esto es pseudocódigo, no código compilable. Podría haber incluído "else if digital = false then", en lugar de usar solo else, pero como la variable "digital" solo tiene dos posibles valores esto sería redundante.
No te preocupes que todo esto lo verás poco a poco a lo largo del curso perfectamente explicado.
Un saludo!