Java 链接列表,将学生链接到一个主题

Java 链接列表,将学生链接到一个主题,java,arrays,linked-list,Java,Arrays,Linked List,我正在尝试注册学生和科目,然后将学生添加到科目中。所有这些都使用Java中的链表 到目前为止,我可以添加学生和科目并显示它们的列表,但我无法“链接”它们并显示学生正在学习什么科目 代码如下: package examenfinal; /** * * @author USUARIO */ public class Alumno { private int ID; private String Nombre; private int Carne; publi

我正在尝试注册学生和科目,然后将学生添加到科目中。所有这些都使用Java中的链表

到目前为止,我可以添加学生和科目并显示它们的列表,但我无法“链接”它们并显示学生正在学习什么科目

代码如下:

package examenfinal;

/**
 *
 * @author USUARIO
 */
public class Alumno {
    private int ID;
    private String Nombre;
    private int Carne;

    public Alumno(int Id, String nombre, int carne) {
        this.ID = Id;
        this.Nombre = nombre;
        this.Carne = carne;
    }

    public int getID() {
        return ID;
    }

    public void setID(int Id) {
        this.ID = Id;
    }

    public String getNombre() {
        return Nombre;
    }

    public void setNombre(String nombre) {
        this.Nombre = nombre;
    }

    public int getCarne() {
        return Carne;
    }

    public void setCarne(int carne) {
        this.Carne = carne;
    }

    @Override
    public String toString() {
        return "Alumno{" + "ID=" + ID + ", Nombre=" + Nombre + ", Carne=" + Carne + '}';
    }


}
package-examenfinal;
导入java.util.LinkedList;
/**
*
*@作者USUARIO
*/
公共类游标{
私人int Codigo;
私有字符串名称;
私营国际电信公司;
私营国际组织;
私人链接列表Asignar;
公共游标(){
}
公共游标(int codigo,String nombre,int ciclo,int año){
这个.Codigo=Codigo;
这个.Nombre=Nombre;
this.Ciclo=Ciclo;
这个。Año=Año;
}
public int getCodigo(){
返回Codigo;
}
公共无效设置Codigo(int Codigo){
这个.Codigo=Codigo;
}
公共字符串getNombre(){
返回Nombre;
}
public void setNombre(字符串Nombre){
这个.Nombre=Nombre;
}
public int getCiclo(){
返回Ciclo;
}
公共无效设置Ciclo(内部Ciclo){
this.Ciclo=Ciclo;
}
公共国际组织{
返回Año;
}
公共无效setAño(int Año){
这个。Año=Año;
}
public void registraralumno(int carne,String nombre,int id){
Asignar.add(新校友(卡恩,姓名,id));
}
公共链接列表getAsignar(){
返回Asignar;
}    
}
package-examenfinal;
导入java.util.LinkedList;
/**
*
*@作者USUARIO
*/
公立大学{
私人链接列表;
私有链接列表游标;
公立大学()
{
Inscritos=新链接列表();
Cursos=新链接列表();
}            
公共无效凭证(内部凭证、字符串名称、内部循环、内部año){
添加(新游标(cod_Curso,nombre,ciclo,año));
}
公共无效Crear_校友(整数id、字符串名称、整数carne){
新增(新校友(id、nombre、carne));
}
公开无效的校友(校友,校友){
curso.registraralumno(0,alumno.getNombre(),0);
}
公共链接列表getCursos(){
返回游标;
}
公共链接列表getInscritos(){
返回标准;
}
}
package-examenfinal;
导入java.util.LinkedList;
导入java.util.Scanner;
导入java.util.*;
/**
*
*@作者USUARIO
*/
公共期末班{
私人校友1;
私有游标游标游标1;
私立大学1;
专用扫描仪输入=新扫描仪(System.in);
私人国际组织;
公屋{
System.out.println(“INFORMACION DEL CURSO”);
int-Id;
字符串名称;
int Ciclo;
INTAño;
System.out.println(“CODIGO:”);
Id=(in.nextInt());
System.out.println(“NOMBRE:”);
Nombre=(in.next());
System.out.println(“CICLO:”);
Ciclo=(in.nextInt());
System.out.println(“AñO:”);
Año=(in.nextInt());
大学1.Crear_Curso(Id、Nombre、Ciclo、Año);
}
公共无效CrearAlumno(){
System.out.println(“\nINGRESE LA INFORMACION DEL ALUMNO”);
System.out.println(“\nID:”);
int-Id;
字符串名称;
int Carne;
Id=(in.nextInt());
System.out.println(“\nNOMBRE:”);
Nombre=(in.next());
System.out.println(“\nNO.CARNE:”);
Carne=(in.nextInt());
大学校友(Id、Nombre、Carne);
}
公共空间莫斯特拉库索()
{
System.out.println(“CURSOS registordos:”);
LinkedList Cursos=universidad1.getCursos();
Iterator it=Cursos.Iterator();
while(it.hasNext())
{
Curso cursoActual=(Curso)it.next();
System.out.println(cursoActual.getNombre());
}
}
公共空间最大值()
{
System.out.println(“注册校友:”);
LinkedList Alumnos=universida1.getInscritos();
Iterator it=Alumnos.Iterator();
while(it.hasNext())
{
Alumno AlumnoActual=(Alumno)it.next();
System.out.println(AlumnoActual.getNombre());
}
}
公共无效AsignarAlumnos(){
}
公共int菜单()
{
System.out.println(“危地马拉马里亚诺加尔维斯大学”);
System.out.println(“\tMENU”);
System.out.println(“\n1.Ingrear校友”);
System.out.println(“2.MOSTRAR校友输入”);
System.out.println(“3.CREAR CURSO”);
System.out.println(“4.MOSTRAR CURSOS”);
System.out.println(“5.ASIGNAR校友POR CURSO”);
System.out.println(“6.MOSTRAR校友POR CURSO”);
System.out.println(“7.SALIR”);
System.out.println(“SELECCIONE UNA OPCION:”);
在.nextInt()中返回;
}
公共接口econsola(){
universidad1=新大学();
}
公开无效操作()
{
int opcion=Menu();
while(opcion!=7)
{
if(opcion==1)
CrearAlumno();
if(opcion==2)
MostrarAlumnos();
if(opcion==3)
CrearCurso();
if(opcion==4)
麝香草();
if(opcion==5)
AsignarAlumnos();
opcion=Menu();
}
}
}
package-examenfinal;
/**
*
*@作者USUARIO
*/
公开课期末考试{
/**
*@param指定命令行参数
*/
公共静态void main(字符串[]args){
//此处的TODO代码应用程序逻辑
InterfaceConsola inter1=新InterfaceConsola();
inter1.操作();
}
}

您需要重构
Curso
以接受现有的
校友

public void RegristrarAlumno(Alumno alumno){
   Asignar.add(alumno);
}   
下一个在你的public void AsignarAlumnos(){ System.out.println("\nINGRESE LA ID DEL ALUMNO"); int alumnoId = in.nextInt(); System.out.println("\nINGRESE LA ID DEL CURSO"); int cursoId = in.nextInt(); List<Alumno> insrictos = universidad1.getInscritos(); Alumno alumno = null; for(Iterator<Alumno> iteratorDelInstrictos = instritos.iterator(); iteratorDelInsritos.hasNext();){ Alumno testAlumno = iteratorDelInsritos.next(); if(testAlumno.getId() == alumnoId ){ alumno = testAlumno; break; } } if(alumno == null){ System.out.println("Alumno not found); return; } Curso curso = null; for(Iterator<Curso> iteratorDelCursos = universidad.getCursos().iterator(); iteratorDelCursos.hasNext();){ Curso testCurso = iteratorDelCursos.next(); if(testCurso.getCodigo() == cursoId){ curso = testCurso; break; } } if(curso == null){ System.out.println("Curso not found); return; } curso.RegristrarAlumno(alumno);
private LinkedList<Alumno> Asignar
private Universidad universidad1 = new Universidad();
universidad1.getCursos().get(i).getAsignar().add(new Alumno());