[英]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.