通过用户输入设置java数组长度
如果对象的长度是用户输入的长度,如何初始化对象中的数组?我想通过用户输入设置蝙蝠的数量,并将其设置为数组长度,然后在通过用户输入设置java数组长度,java,arrays,Java,Arrays,如果对象的长度是用户输入的长度,如何初始化对象中的数组?我想通过用户输入设置蝙蝠的数量,并将其设置为数组长度,然后在basesAchieved的数组中,我想根据用户输入设置一个数字(1-4),表示实现的基数 // set up a Batter public class Batter { private String batterName; private int numberOfBats; private int[] basesAchieved; // fil
basesAchieved
的数组中,我想根据用户输入设置一个数字(1-4),表示实现的基数
// set up a Batter
public class Batter
{
private String batterName;
private int numberOfBats;
private int[] basesAchieved;
// fill fields with empty data, how is this done with an array??
public Batter()
{
this("", 0,0);
}
//
public Batter(String batterName, int numberOfBats, int[] basesAchieved)
{
this.batterName = batterName;
this.numberOfBats = numberOfBats;
this.basesAchieved = basesAchieved;
}
public void setBatterName(String batterName)
{
this.batterName = batterName;
}
public String getBatterName()
{
return batterName;
}
public void setNumberOfBats(int numberOfBats)
{
this.numberOfBats = numberOfBats;
}
public int getNumberOfBats()
{
return numberOfBats;
}
// want to set an array to get a number (1-4) for each number of @ bats
// (numberOfBats).
public void setBasesAchieved(int[] basesAchieved)
{
this.basesAchieved = ;
}
public int getBasesAchieved()
{
return basesAchieved;
}
}
在
setter
方法中,您应该分配this.basesAchieved=basesAchieved代码>。如果您想用一个长度初始化basesAchieved,那么只需在您初始化的Batter
类中:int[]basesAchieved=new int[yourlength]
,然后调用该类的setter
方法您在尝试使用int数组的类中遇到一些错误
public Batter()
{
this("", 0, new int[0]);
}
// skipped...
public void setBasesAchieved(int[] basesAchieved)
{
this.basesAchieved = basesAchieved;
}
public int[] getBasesAchieved()
{
return basesAchieved;
}
此问题说明如何获取用户输入
最简单的方法之一是使用扫描仪对象,如下所示:
您可以使用此方法读取numberOfBats
的数量,并创建具有正确数组长度的对象。然后,您可以不断请求用户输入,并将其放入basesAchieved
数组中。或者,您可以先要求读者提供所有输入,然后创建对象
Scanner reader = new Scanner(System.in); // Reading from System.in
System.out.println("Enter a number: ");
int n = reader.nextInt(); // Scans the next token of the input as an int.