Java在传入的数组的偶数索引处打印整数

时间:2017-10-26 04:03:08

标签: java

public class Exercise2
{
    public static void printEvenIndex(ArrayList list)
    {
        //Print the integers at the even indexes of the passed in array

    }

    public static void main(String[] args)
    {
        //instantiate an ArrayList named values nand fill with Integers
        //fromt the supplied list
        ArrayList<Integer> values = new ArrayList<Integer>();
        int[] nums = {1, 5, 7, 9, -2, 3, 2};

        System.out.println("Expected Result:\t 1, 7, -2, 2,");
        System.out.print("Your Result:\t\t ");
        printEvenIndex(values);
    }
}

当它告诉我在传入的数组的偶数索引处打印整数时,我有点困惑。

3 个答案:

答案 0 :(得分:1)

数组索引从0开始,因此在此数组int[] nums = {1, 5, 7, 9, -2, 3, 2};中,数字1位于索引0,5位于索引1,7位于索引处2,依此类推。您被要求在偶数索引处打印数字,所以 - 1, 7, -2, 2

您可以按数组名称访问数组元素,而num[0]等位置会为您提供1。

这是一个很好的起点,可以在Arrays上阅读更多内容。

考虑一下您的方法,我假设您希望use asList()ArrayList传递给printEvenIndex()方法。 ArrayList的区别在于您将使用get(index)方法从arraylist中获取元素。

即使在这种情况下,您也需要检查是否将偶数索引作为值传递给.get()

答案 1 :(得分:0)

你可以使用类似for循环的东西从0开始迭代你的num []数组,每次迭代都向计数器加2,这样它只打印偶数索引。

for (int i = 0; i < nums.length; i+=2)
        {
            System.out.print(nums[i] + " ");
        }

此代码的输出为:1 7 -2 2

答案 2 :(得分:0)

我认为这对你有用。

public static void printEvenIndex(ArrayList list)
{
    //Print the integers at the even indexes of the passed in array
    System.out.print("Expected Result:\t");

    for(int i=0;i<list.length;i++)
    {
       if((i%2==0)||(i==0)) 
          System.out.print(list[i]+"\t");
    }
}