2014-05-02 80 views
-1

首先,我沒有很好的英語。我有一個問題。 問題:醫院病牀上的10張病牀空的和完整的隨訪意在通過鏈表來控制。當病人到醫院或病人出院時自動執行Java分配。如何自動添加鏈表節點?

如何自動添加節點? 我想要這樣: 第一位患者加入了1.牀。 第二位患者加入2.bed。 第三位患者加入3.bed。 。 。 。 例如:如果我刪除第二個病人,它將變爲空,新加入的病人將自動成爲第二個病人。我必須用鏈接列表來做。再次爲我的英語不好。

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; 
     } 

    } 

回答

0

你確定你必須使用鏈表嗎?或者這些是任務條件? 一般來說,如果你必須把元素放在索引位置,應該更好地使用數組列表

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);