[英]Java array to store multiple object of one class
這是我的班級雇用的
public class Employe {
public int noEmploye;
public String nom;
public int departement;
public double salaireBrut;
public double impots;
public double rrgc;
public double assEm;
public double salaireNet;
public double SalaireAnnuel;
public double suplemetaire;
}
這是我的主要
Employe emp = new Employe();
emp.noEmploye=123;
emp.nom= superman;
emp.departement= 4;
如何將emp.noEmploye,emp.nom,emp.departement放入數組行
像[123,超人,4]的輸出
謝謝你的幫助
坦率
為您的Employee
類編寫一個toString
函數,它可以執行您希望的任何格式化,然后只需要System.out.println
任何Employee
實例。
如果你寫例如
public String toString() {
return "[%d, %s, %d]".format(noEmployee, nom, department);
}
然后創建此類對象的集合,您將獲得如下輸出
[[123, superman, 4], [1234, batman, 5]]
如果必須將所有項目放置在一個數組中,則應這樣進行:
Object[] items = {item1, item2, ...};
您可以認為輸出如下所示:
public String toString(){
StringBuilder b = new StringBuilder();
b.append('[');
for(int i = 0; i < items.length; i++){
if(i != 0) b.append(", ");
b.append(items[i]);
}
b.append(']');
}
但是,這通常不是一個好主意。 原始數據類型將轉換為包裝的數據類型(即Integer,而不是int)。 這降低了效率。 此外,對於閱讀您的代碼的人來說,這簡直是令人困惑。
如果你想考慮一堆數值,你可以考慮的是:
private static final int NO_EMPLOYEE_OFFSET = 0, DEPARTMENT_OFFSET = 1, ...;
int[] data;
String field1;
Point field2;
...
這樣可以避免對原始數據類型使用包裝器。 但是,它不允許您將所有字段存儲在數組中。
如果選擇執行此操作,請將I提供的toString與Irfy提供的toString結合在一起。
好吧,您可以使用Object[]
來存儲不同類型的對象,但這一般不是一個好主意。 在Java中,作為一種靜態類型的語言,通常是使用單一類型的數組。 也許你應該重新考慮你打算構建程序的方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.