Java 如何将整数数组添加到arraylist?
所以,我在一年级的CompSci课上做一个作业,这个数组作业有点超出我的理解。 在过去的一两周里,我对数组和ArrayList做了一些工作,在很大程度上我是成功的,但是这个作业给了我一个包含整数数组的类(TestArray),并要求我为创建TestArray对象数组的类编写代码。以下是我收到的代码:Java 如何将整数数组添加到arraylist?,java,arrays,arraylist,Java,Arrays,Arraylist,所以,我在一年级的CompSci课上做一个作业,这个数组作业有点超出我的理解。 在过去的一两周里,我对数组和ArrayList做了一些工作,在很大程度上我是成功的,但是这个作业给了我一个包含整数数组的类(TestArray),并要求我为创建TestArray对象数组的类编写代码。以下是我收到的代码: public class TestArrays { private int[] testArray; public TestArrays() {
public class TestArrays
{
private int[] testArray;
public TestArrays()
{
testArray = new int[10];
generateRandomArray();
}
public void generateRandomArray()
{
for(int index = 0; index < testArray.length; index++)
{
testArray[index] = (int)(Math.random()*10 +1);
}
}
public int[] getArray()
{
return testArray;
}
公共类测试阵列
{
私有内部测试阵列;
公测
{
testArray=新整数[10];
GeneratorDomainArray();
}
public void generateRandomArray()
{
对于(int index=0;index
下面是我试图编写的代码:
import java.util.ArrayList;
public class TestArrayLists
{
private ArrayList<TestArrays> testArrayList;
/**
* Complete the contructor for the class. Instantiate the testArrayList
* and call the fillArrayList method to add objects to the testArrayList.
* @param numElements The number of elements in the ArrayList
*/
public TestArrayLists(int numElements)
{
fillArrayList(numElements);
}
/**
* Complete the fillArrayList method. It should fill the testArrayList with
* TestArrays ojects consisting of 10 element int Arrays of random numbers.
* @param numElements The number of elements in the ArrayList
*/
private void fillArrayList(int numElements)
{
TestArrays testArray;
for(int i = 0; i < numElements; i++)
{
testArray = new TestArrays();
testArrayList.add(testArray);
}
}
/**
* For each TestArrays object in the testArrayList,
* print out the numbers in the int Array.
*/
public void printArrayList()
{
for(int i = 0; i < testArrayList.size(); i++)
{
System.out.println(testArrayList.get(i));
}
}
}
import java.util.ArrayList;
公共类测试列表
{
私有ArrayList testArrayList;
/**
*完成类的构造函数。实例化testArrayList
*并调用fillArrayList方法将对象添加到testArrayList。
*@param numElements数组列表中的元素数
*/
公共测试列表(整数)
{
FillarryList(numElements);
}
/**
*完成fillArrayList方法。它应使用
*TestArray项目由随机数的10个元素整数数组组成。
*@param numElements数组列表中的元素数
*/
私有无效填充列表(整数)
{
testArray testArray;
对于(int i=0;i
当我尝试运行fillArrayList()时,我得到了一个空指针异常,我知道这意味着我没有正确地实例化testArray,但testArray构造函数应该这样做(我认为),而我尝试过的任何方法都不起作用
如果您不只是给我正确执行此操作所需的代码,我会更愿意,因为尽管我确信这是一个简单的修复方法,但我还不太了解,我也希望知道将来如何执行此操作。如果您愿意向我解释您在做什么,我将非常感谢。谢谢您的时间。您忘记在
TestArrayLists
构造函数中实例化testArrayList
。请尝试添加
testArrayList=newarraylist();
添加到构造函数。当您尝试添加到此
ArrayList
时,字段private ArrayList testArrayList
为null
。立即或在构造函数中初始化它。其他提示:您的printArrayList()
方法不打印数字。第一个for循环是正确的,但是您还需要第二个for循环,或者使用流API迭代通过调用testArrayList.get(i).getArray()接收的int[]。