Excepción línea 54 ¿Cómo corregirlo?
Publicado por jwhkadjh (1 intervención) el 18/06/2019 14:26:05
El resto de clases están bien programadas, pero no entiendo por qué me sale error a veces cuando lo ejecuto (otras veces me va bien)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
package nueve;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner teclado = new Scanner (System.in);
Disco uno = new Disco();
Grupo dos = new Grupo();
System.out.println("Introduce el título del disco:");
uno.setTitulo(teclado.nextLine());
System.out.println("Introduce el grupo que lo interpreta:");
uno.setGrupo(teclado.nextLine());
dos.setNombre(uno.getGrupo());
do {
System.out.println("Introduce el año de lanzamiento:");
uno.setAñoLanzamiento(teclado.nextInt());
}while(uno.getAñoLanzamiento()<=0);
do {
System.out.println("Introduce el precio de venta:");
uno.setPrecioVenta(teclado.nextDouble());
}while(uno.getPrecioVenta()<=0);
do {
System.out.println("Introduce el año de fundación del grupo:");
dos.setAñoCreacion(teclado.nextInt());
}while(dos.getAñoCreacion()<=0);
do {
System.out.println("Introduce el número de integrantes del grupo:");
dos.setNumeroMiembros(teclado.nextInt());
}while(dos.getNumeroMiembros()<=0);
do {
System.out.println("Introduce el número de canciones del disco:");
uno.setNumeroCanciones(teclado.nextInt());
}while(uno.getNumeroCanciones()<=0);
Persona tres[] = new Persona[dos.getNumeroMiembros()];
Cancion cuatro[] = new Cancion[uno.getNumeroCanciones()];
for(int i=0;i<tres.length; i++) {
tres[i] = new Persona();
System.out.println("Introduce el nombre del integrante número "+(i+1));
tres[i].setNombre(teclado.next());
System.out.println("Introduce el apellido del integrante número "+(i+1));
tres[i].setApellido(teclado.next());
System.out.println("Introduce el año de nacimiento del integrante número "+(i+1));
tres[i].setAñoNacimiento(teclado.nextInt());
}
System.out.println("Introduzca las canciones: ");
for(int j=0;j<cuatro.length; j++) {
cuatro[j]= new Cancion();
System.out.println("Nombre de la canción número "+(j+1));
cuatro[j].setTitulo(teclado.nextLine());
teclado.next();
System.out.println("Duración de la canción número "+(j+1)+" en segundos");
cuatro[j].setDuracion(teclado.nextInt());
}
System.out.println();
System.out.println();
System.out.println(uno.toString());
System.out.println();
System.out.println(dos.toString());
System.out.println("Miembros: ");
for(int i=0; i<tres.length; i++) {
System.out.println(tres[i].toString());
}
System.out.println();
System.out.println("Lista de canciones: ");
for(int i=0; i<cuatro.length; i++) {
System.out.println();
System.out.println((i+1)+cuatro[i].toString());
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
package nueve;
public class Disco {
private String titulo;
private int añoLanzamiento;
private int numeroCanciones;
private double precioVenta;
private String grupo;
public Disco() {
}
public void setTitulo (String titulo) {
this.titulo=titulo;
}
public void setAñoLanzamiento (int añoLanzamiento) {
this.añoLanzamiento=añoLanzamiento;
}
public void setNumeroCanciones (int numeroCanciones) {
this.numeroCanciones=numeroCanciones;
}
public void setPrecioVenta (double precioVenta) {
this.precioVenta=precioVenta;
}
public void setGrupo (String grupo) {
this.grupo=grupo;
}
public String getTitulo() {
return titulo;
}
public int getAñoLanzamiento() {
return añoLanzamiento;
}
public int getNumeroCanciones() {
return numeroCanciones;
}
public double getPrecioVenta() {
return precioVenta;
}
public String getGrupo() {
return grupo;
}
public String toString() {
String mensaje="Disco: "+titulo+" ("+añoLanzamiento+") "+precioVenta+" €";
return mensaje;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package nueve;
public class Grupo {
private String nombre;
private int añoCreacion;
private int numeroMiembros;
public Grupo() {
}
public void setNombre (String nombre) {
this.nombre=nombre;
}
public void setAñoCreacion (int añoCreacion) {
this.añoCreacion=añoCreacion;
}
public void setNumeroMiembros (int numeroMiembros) {
this.numeroMiembros=numeroMiembros;
}
public String getNombre() {
return nombre;
}
public int getAñoCreacion() {
return añoCreacion;
}
public int getNumeroMiembros() {
return numeroMiembros;
}
public String toString() {
String mensaje="Por: "+nombre+" ("+añoCreacion+")";
return mensaje;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package nueve;
public class Cancion {
private String titulo;
private int duracion;
public Cancion() {
}
public void setTitulo (String titulo) {
this.titulo=titulo;
}
public void setDuracion (int duracion) {
this.duracion=duracion;
}
public String getTitulo() {
return titulo;
}
public int getDuracion() {
return duracion;
}
public String toString() {
String mensaje=":"+titulo+" ("+duracion+" segundos)";
return mensaje;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package nueve;
public class Persona {
private String nombre;
private String apellido;
private int añoNacimiento;
public Persona() {
}
public void setNombre (String nombre) {
this.nombre=nombre;
}
public void setApellido (String apellido) {
this.apellido=apellido;
}
public void setAñoNacimiento (int añoNacimiento) {
this.añoNacimiento=añoNacimiento;
}
public String getNombre() {
return nombre;
}
public String getApellido() {
return apellido;
}
public int getAñoNacimiento() {
return añoNacimiento;
}
public String toString() {
String mensaje=" "+nombre+" "+apellido+" ("+añoNacimiento+")";
return mensaje;
}
}
Valora esta pregunta


0