[英]How do I create multiple Java object instances from an array?
我正在嘗試獲取此方法來創建類“ Sport”的兩個實例。 該方法正在傳遞一個數組,該數組包含有關類的信息,然后將其發送到要創建的構造函數。
但是,我不確定給定我的代碼如何引用實例1或2。
public static void seperateValues(String sportDetail) {
String[] sportDetails = sportDetail.split(",");
System.out.println("Adding new sport to the Sport collection");
System.out.println(sportDetail);
/*
for(int i=0; i<sportDetails.length; i++) //just used for testing whether it was splitting correctly {
System.out.println(sportDetails[i]);
}*/
//name,usagefee,insurance,affiliationfees, then court numbers
//Tennis,44,10,93,10,11,12,13,14,15,16
int vlength;
vlength = sportDetail.length();
new Sport(sportDetails); //this static methods loops twice, giving tennis and baseball
System.out.println(name); //this lists tennis and baseball respectively
}
如果您只想引用運動的兩個實例,則只需執行以下操作:
Sport sport1 = new Sport(sportDetails);
Sport sport2 = new Sport(sportDetails);
然后,當您要訪問它們時,只需簡單地調用sport1
或sport2
,但是,如果要對n個運動使用n次該方法,則可以執行以下操作:首先,通過更改separateValues()
方法來返回運動,方法是更改這些行:
public static void seperateValues(String sportDetail) {
至
public static Sport seperateValues(String sportDetail) {
在方法的最后,使其返回一項運動,如下所示:
Sport sport = new Sport(sportDetails);
return sport;
然后,您可以在循環內調用該方法並創建一個列表,以便可以創建所需的任意多個運動:
//First declare a list of sports:
List<Sport> sports = null;
for (int i = 0; i<asManySportsAsYouWantToAdd; i++){
sports.add(separateValues(sportDetail));
}
然后,要訪問每個單獨的運動,可以簡單地使用:
sports.get(n); //Where n is place of the sport on the list
假設原始字符串sportDetail
是“ tennis,baseball”,然后將其轉換為2個術語的數組,例如sportDetails[0] = "tennis"
和sportDetails[1] = "baseball"
,那么在Sport
類中,您只需要照這樣引用它們。
換句話說, sportDetails[0]
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.