我只需朝着正确的方向迈出一步。我正在为一个基本的java课程做一些功课,我似乎无法回忆起我应该在这里做些什么。我不想使用数组,我知道。这是迄今为止的代码。
import java.util.Scanner;
public class Store
{
public static void main (String [] args)
{ Scanner s = new Scanner (System.in);
System.out.println("How many songs would you like to purchase?");
int numSongs = s.nextInt();
for(int i = 0; i < numSongs; i++) {
System.out.println("Enter the length of the songs: ");
int lengthSongsi = s.nextInt();
}
}
}
我需要能够存储用户定义的变量。在用户告诉我们之前,该金额是未知的。我不知道如何在不覆盖最后一个变量的情况下这样做。如果数组是唯一的方法,我将使用它
答案 0 :(得分:0)
您可能想要使用ArrayList
。这就像一个数组,但它是动态的,所以你不需要最初定义长度:
ArrayList mList = new ArrayList();
您也可以定义类型,如下所示:
ArrayList<String> mList = new ArrayList<String>();
然后,当您想要添加数据时,您可以:
mlist.add("My Value");
有关详细信息,请查看docs
答案 1 :(得分:0)
正如人们所建议的那样,使用ArrayList或Array。简单的方法就是不断地将它们添加到ArrayList中,同时某些参数保持为真。
另外,这只是我的代码风格,我总是有第一个{在声明之后开始,而不是说如果{....它会是:
if
{..... makes code easier.
至于它的代码方面,你可以试试这个:
ArrayList<Integer> mList = new ArrayList();
for(int i = 0; i < numSongs; i ++)
{
System.out.println("Enter Song Length");
int lengthSongsi = s.nextInt();
mList.add(lengthSongsi);
//if you want to access the length of the song at a particular point
//just access it as you would any normal array, so it could look like
//System.out.println("Song length at index " + i + "is: " + mList.get(i));
}
如果它没有工作让我知道。因为我目前正在工作,所以我还没有通过IDE运行它。