如何自动添加链表节点?

时间:2014-05-02 14:30:07

标签: java linked-list

首先,我没有良好的英语。我有一个问题。 问题:医院病床上的10张病床空置和完整随访,目的是通过链表进行控制。当患者到医院或患者出院时,自动执行Java任务。

如何自动添加节点? 我想这样: 第一名患者补充1.床。 第二名患者加入2.bed。 第三名患者增加了3.bed。 。 。 。 例如:如果我删除第二名患者,它将为空,新添加的患者将是第二名患者自动进行。我必须使用Linked-List.Sorry再次为我的坏英语做。

 public class Yatak {
    static int no;


    Yatak ilkYatak = null;
    Yatak sonYatak = null;
    Yatak sonraki;

    //Hasta tut;





    public Yatak() {

        this.sonraki = null;
    }

public void hastaEkle() {

        Yatak yeniEklenen = new Yatak();

        // Eğer hiç bir hasta kayıtlı değilse ilk eklediğimiz hastayı listenin
        // başına ve sonuna atıyoruz.
        if (ilkYatak == null) {
            ilkYatak = yeniEklenen;
            sonYatak = yeniEklenen;
        }

         /* Eğer daha önceden kayıtlı bir hasta varsa yeni ekleyeceğimiz hasta
         * sonYatak oluyor. Yani listenin en son elemanı oluyor.
         */
        else {
            sonYatak.sonraki = yeniEklenen;
            sonYatak = yeniEklenen;
        }

    }

2 个答案:

答案 0 :(得分:0)

你确定你必须使用链表吗?或者这些是任务条件? 通常,如果必须将元素放在索引位置定义的位置,最好使用arraylist

答案 1 :(得分:0)

您想自己实施链接列表吗?否则标准java.util.LinkedList将为您执行此操作。例如..

    LinkedList<String> bed = new LinkedList<String>();
    bed.add("Patient 1");
    bed.add("Patient 2");
    bed.add("Patient 3");
    bed.add("Patient 4");

    System.out.println(bed);

    // Removing patient 3
    bed.remove(2);

    System.out.println(bed);
相关问题