簡體   English   中英

如何從一個數組創建多個Java對象實例?

[英]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);

然后,當您要訪問它們時,只需簡單地調用sport1sport2 ,但是,如果要對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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM