跟踪最高数组元素

时间:2014-12-12 00:16:26

标签: java arrays

/** (B) declare and create an array to contain at least 100 records */
    String arrayRec[] = new String[100];
/** (B) manually populate a few records ... use supplemental file provided */
    arrayRec[0] = "FirstValue";
    arrayRec[1] = "SecondValue";
    arrayRec[2] = "ThirdValue";
    arrayRec[3] = "FourthValue";
    arrayRec[4] = "FifthValue";
    arrayRec[5] = "SixthValue";
    arrayRec[6] = "SeventhValue";
    arrayRec[7] = "EigthValue";
    arrayRec[8] = "NinthValue";
    arrayRec[9] = "TenthValue";
    /** (B) declare and initialize and integer variable, imax to track the highest array element used (9) */

有人能通过初始化变量int iMax来“跟踪”使用的最高数组元素(9),告诉我方向是什么意思吗? 我不太明白它

1 个答案:

答案 0 :(得分:1)

在这种情况下,"最高"或者数组中的最后一个元素是" TenthValue"。

即。你有一个十个字符串的数组(0在数组中计为1)所以iMax变量保留了数组中最后一个元素的记录,因为索引被添加到它中。

有关数组的更多信息,请查看here

***(B)声明并创建一个包含至少100条记录的数组 / 此部分声称您需要一个包含至少100条记录的数组,按您的示例,您的数组的初始容量为10

String arrayRec[] = new String[10];

应该是:

String arrayRec[] = new String[100];

为了将来参考,ArrayList可以更好地解决这个问题,但我认为这是初学者的家庭作业?

最新更新

我刚刚意识到你问的问题。

基本上,您被要求创建一个大小为100的数组,但不会填充所有数组,只需要几个索引。

为此,请使用以下代码:

//Create the variable which will hold the last element in the array
int iMax = 0;
String arrayRec[] = new String[100];

arrayRec[0] = "FirstValue";
arrayRec[1] = "SecondValue";
arrayRec[2] = "ThirdValue";
arrayRec[3] = "FourthValue";
arrayRec[4] = "FifthValue";
arrayRec[5] = "SixthValue";
arrayRec[6] = "SeventhValue";
arrayRec[7] = "EigthValue";
arrayRec[8] = "NinthValue";
arrayRec[9] = "TenthValue";

//Run through each index in the array to see how many are filled
//All unfilled indexes will be pre filled with null values
for( String s : arrayRec )
{
    if( s != null ) //if the index does not contain null
    {
        iMax++; //Add another one to the counter
    }
}

System.out.println("Highest element in array = " + iMax); //iMax variable will return ten for the ten values