如果可能的话如何自动化

时间:2012-05-14 06:39:23

标签: java

我正在尝试打印出数组的所有元素,并将其自身添加到我已经想到的索引中。我不知道如何自动化它。它有效,但它可以更好。

public class homeworkArrays 
{

    public static void main(String[] args) 
    {
        int[] myArray = {6, 7, 2, 1, 10, 34};
        int blank = addByIndex(myArray);
    }

    public static int addByIndex(int[] myArray) 
    {
        for(int i = 0; i < myArray.length; i++)   
        {   
            System.out.println(i + " - " + myArray[i]); 

        }

            myArray[0] = myArray[0] + myArray[0];
            System.out.println("0 is now " + myArray[0]);
            myArray[1] = myArray[1] + myArray[1];
            System.out.println("1 is now " + myArray[1]);
            myArray[2] = myArray[2] + myArray[2];
            System.out.println("2 is now " + myArray[2]);
            myArray[3] = myArray[3] + myArray[3];
            System.out.println("3 is now " + myArray[3]);
            myArray[4] = myArray[4] + myArray[4];
            System.out.println("4 is now " + myArray[4]);
            myArray[5] = myArray[5] + myArray[5];
            System.out.println("5 is now " + myArray[5]);


    int i = 0;
    return myArray[i];
    }
}

4 个答案:

答案 0 :(得分:3)

在循环中执行:

for(int i = 0; i < myArray.length; i++)   
{   
    System.out.println(i + " - " + myArray[i]); 
    myArray[i] = myArray[i] * 2;
    System.out.println(i + " after multiplication - " + myArray[i]); 
}

那部分内容并不清楚:

int i = 0;
return myArray[i];

你试图在那里实现什么?

答案 1 :(得分:2)

binyamin说得对,但我建议

myArray[i] += myArray[i];

因为整数的乘法比简单的加法有更多的开销。

答案 2 :(得分:1)

我不知道我的问题是否正确,但试试这个......

public static int addByIndex(int[] myArray) 
{
    for(int i = 0; i < myArray.length; i++)   
    {   
        System.out.println(i + " - " + myArray[i]);
        myArray[i] += myArray[i];
        System.out.println(i " is now " + myArray[i]);
    } 
    int i = 0;
    return myArray[i]; 
}

答案 3 :(得分:0)

目前你正在加倍数值,目前的答案也是价值加倍。您的问题是“将自己添加到索引中”,这意味着如果数组索引4中的数字为2,则您的输出应为6

    for (int i = 0; i < myArray.length; i++)
    {
        myArray[i] += i;
        System.out.println(myArray[i]);
    }

上面的代码将获取数组中的每个元素并将当前索引添加到它 - 然后打印该值。