Unsure how to set uniform value to a vector

2019-09-19 10:53发布

问题:

So i have a problem where i have a vector class, and if the user wants to set a uniform value to the int they type in. This is my code so far:

public static Vector uniform(int length, long value) {

    /*
        EXAMPLE
        length 4, value 4 => [4 4 4 4]
    */

    Vector vector = new Vector(length);

    //for loop to iterate through each elements & set value?

    return new Vector(length);
}

The part with the reminder was the part i was unsure about. When the vector main program is run and the user types in "Set a = uniform 4", then the number 4 must become the value for all the numbers in the vector. How can i do this?

回答1:

Assuming the Vectors class name is a typo, and it's actually Vector:

Vector v = new Vector(length);
Arrays.fill(v.elements, value);
return v;


回答2:

you can use the below.

    public class Main {

        public static void main(String[] args) {
            int length = 5, value  = 4;
            Vector vector = new Vector(Collections.nCopies(length, value));

            System.out.println(vector);
        }
    }

It will output:

[4,4,4,4,4]


标签: java vector