2012-12-29 48 views
0

我有一個填充的ArrayList對象集合(學生),現在我想將填充的對象傳遞給方法簽名以將每個唯一對象寫入文件。如何將對象集合作爲java中方法的參數

public static ArrayList<PopulateAlumnosObj> populateAlumnos(int idAlumno, String nombreAlumno) { 
    ArrayList<PopulateAlumnosObj> alumnosList = new ArrayList<PopulateAlumnosObj>(); 
    for (int i = 0; i <= 100; i++) { 
     mPopulateAlumnosObj = new PopulateAlumnosObj(i, nombreAlumno);  
     mPopulateAlumnosObj.setTelefonoAlumno("5555-5555"+i); 
     mPopulateAlumnosObj.setDireccionAlumno("Dirección"+i); 
     alumnosList.add(mPopulateAlumnosObj); 
    } 
    return alumnosList; 
} 

*Here I receive the populate objct.* 

ArrayList<PopulateAlumnosObj> mReceiveAlumnosObjList = new ArrayList<PopulateAlumnosObj>(); 
    mReceiveAlumnosObjList = populateAlumnos(1, "Isaías"); 
    writeToFile(mReceiveAlumnosObjList); 

    *This does not work!* 

    public static void writeToFile(ArrayList<PopulateAlumnosObj> aAlumnoToFile) { 

現在它工作! 我錯過了每個! 無論如何,謝謝。

  for (PopulateAlumnosObj eachAlumnoToFile : aAlumnoToFile) { 
      pw.println(eachAlumnoToFile.getIdAlumno() + "\t"); 
      pw.println(eachAlumnoToFile.getNombreAlumno() + "\t\t"); 
      pw.println(eachAlumnoToFile.getTelefonoAlumno() + "\t\t"); 
      pw.println(eachAlumnoToFile.getDireccionAlumno() + "\t\t"); 
     } 

我只是在練習收集之類的; 但我會很感激你的建議。感謝大家。

+0

「這行不通」是沒有足夠的信息。請閱讀http://tinyurl.com/so-list –

+0

用你的嘗試填寫writeToFile()函數然後讓我們談談。 – Sanchit

+1

請正確格式化您的代碼。使閱讀更容易。 – MrSmith42

回答

1
  1. 不要實例化ArrayList兩次。僅在方法populateAlumnos中留下實例化。
  2. 我沒有看到你的mPopulateAlumnosObj聲明。像PopulateAlumnosObj mPopulateAlumnosObj;之類的東西必須在populateAlumnos之內。
  3. 將您的ArrayList傳遞給writeToFile方法看起來正確。
+0

我已經修復它,你可以看到更新的版本。 –

+1

@IsaíasSosaok,但你的'ArrayList'仍然實例化兩次。 – bellum

+0

謝謝我現在就解決它。 –

0

可能是這樣的:

List<PopulateAlumnosObj> populateAlumnos = new ArrayList<PopulateAlumnosObj>(100); 

     for (int i = 0; i <= 100; i++) { 
      PopulateAlumnosObj mPopulateAlumnosObj = new PopulateAlumnosObj(i, nombreAlumno); 
      mPopulateAlumnosObj.setTelefonoAlumno("5555-5555"+i); 
      mPopulateAlumnosObj.setDireccionAlumno("Dirección"+i); 
      populateAlumnos.add(mPopulateAlumnosObj); 
     } 

     for(PopulateAlumnosObj student: populateAlumnos) { 
      writeToFile(student); 
     } 

     public void writeToFile(PopulateAlumnosObj alumnos) { //method implementation... 

但我不知道你PopulateAlumnosObj構造函數和setter ......他們看起來很奇怪...

相關問題