HiveBrain v1.2.0
Get Started
← Back to all entries
snippetjavaCritical

How to initialize an array in Java?

Submitted by: @import:stackoverflow-api··
0
Viewed 0 times
arrayinitializehowjava

Problem

I am initializing an array like this:

public class Array {

    int data[] = new int[10]; 
    /** Creates a new instance of Array */
    public Array() {
        data[10] = {10,20,30,40,50,60,71,80,90,91};
    }     
}


NetBeans points to an error at this line:

data[10] = {10,20,30,40,50,60,71,80,90,91};


How can I solve the problem?

Solution

data[10] = {10,20,30,40,50,60,71,80,90,91};


The above is not correct (syntax error). It means you are assigning an array to data[10] which can hold just an element.

If you want to initialize an array, try using Array Initializer:

int[] data = {10,20,30,40,50,60,71,80,90,91};

// or

int[] data;
data = new int[] {10,20,30,40,50,60,71,80,90,91};


Notice the difference between the two declarations. When assigning a new array to a declared variable, new must be used.

Even if you correct the syntax, accessing data[10] is still incorrect (You can only access data[0] to data[9] because index of arrays in Java is 0-based). Accessing data[10] will throw an ArrayIndexOutOfBoundsException.

Code Snippets

data[10] = {10,20,30,40,50,60,71,80,90,91};
int[] data = {10,20,30,40,50,60,71,80,90,91};

// or

int[] data;
data = new int[] {10,20,30,40,50,60,71,80,90,91};

Context

Stack Overflow Q#1938101, score: 736

Revisions (0)

No revisions yet.