Gracias!!!
He hecho lo que me has pedido, y me gustaría saber dos cosas
1. ¿Me ha quedado bien?
2. ¿Dónde debo agregar las NotasEstudiante?, ¿En la Lista de Materias
General ó en la Lista de
materiasdelestudiante en particular?, Porque según mi código tengo guardada la materia en la lista de
materiasdelestudiante y no en la lista
General
3. Otro detalle que creo que es importante es que la idea es que cuando un docente va a ingresar notas, selecciona si quiere ingresar notas de Quices, o Parciales...etc, el detalle está en que le debe aparecer un mensaje de alerta si las notas de Quices, Parciales, etc ya han sido llenadas. Es por eso que recorro la lista de Quices, Parciales, etc a ver si ya está llena.
Código Javascript
:
Ver originalpublic void notas_docente() throws IOException{
System.out.println("Ingrese el nombre del docente");
String buscador1 = lector.readLine();
for ( Docente docente : docentes )
{
if ( docente.getNombredocente().equals(buscador1) )
{
System.out.println("Ingrese el nombre de la materia");
String buscador2 = lector.readLine();
for ( int i=0; i<materias.size(); i++ )// Añadir materia a la lista de materias del estudiante - PRUEBA 1
{
if ( materias.get(i).getNombredocente().equalsIgnoreCase(buscador1) && materias.get(i).getNombremateria().equalsIgnoreCase(buscador2))
{
System.out.println("El tamaño de la lista estudiantes de la materia es:" +materias.get(i).estudiantesdelamateria.size());
System.out.println("Los estudiantes son:");
for ( int j=0; j<materias.get(i).estudiantesdelamateria.size(); j++)
{
System.out.println(materias.get(i).estudiantesdelamateria.get(j).getNombre());
}
System.out.println("Seleccione el estudiante al que quiere ingresar notas");
String buscador3 = lector.readLine();
for ( int j=0; j<materias.get(i).estudiantesdelamateria.size(); j++)
{
if ( materias.get(i).estudiantesdelamateria.get(j).getNombre().equalsIgnoreCase(buscador3))
{
NotasEstudiante notasestudiante = new NotasEstudiante();
notasestudiante.crear_listas();
notasestudiante.setCodigoestudiante(materias.get(i).estudiantesdelamateria.get(j).getCodigoestudiante());
int opcion4 =0;
do{
System.out.println("1. Notas de Quices");
System.out.println("2. Notas de Trabajos");
System.out.println("3. Notas de Parciales");
System.out.println("4. Salir");
System.out.print("Digite la opcion: ");
opcion4 = Integer.parseInt(lector.readLine());
System.out.println();
switch(opcion4){
case 1: notasestudiante.notas_quices();break;
case 2: notasestudiante.notas_trabajos();break;
case 3: notasestudiante.notas_parciales();break;
case 4: opcion4 = 4;break;
default: break;
}
}while(opcion4!=4);
opcion4 =0;
System.out.println("Estoy dentro 1");
for ( int k=0; k<materias.get(i).estudiantesdelamateria.get(j).materiasdelestudiante.size(); k++ )
{
if ( materias.get(i).estudiantesdelamateria.get(j).materiasdelestudiante.get(k).getNombremateria().equalsIgnoreCase(buscador2) )
{
notasestudiante.setCreditos(materias.get(i).estudiantesdelamateria.get(j).materiasdelestudiante.get(k).getCreditos());
materias.get(i).estudiantesdelamateria.get(j).materiasdelestudiante.get(k).notasdelamateriaporestudiante.add(notasestudiante);
}
}
}
}
}
}
}
}
}
En la linea
74 asigno los créditos de la materia y en la
75 guardo todo el objeto
NotasEstudiante en la lista de
notasdelamateriaporestudiante
Si te fijas, siempre ingreso es a la lista de
materiasdelestudiante y no a la lista
general. Nosé si eso afecte en algo.
Aquí el código completo:
Clase Matricula - Edicon 2: http://ideone.com/clF3AV Clase NotasEstudiante - Edicion 2: http://ideone.com/hgxjhC PD: GRACIAS POR LA PACIENCIA Y DEDICACIÓN