Revatha Ramanan K
Revatha Ramanan K

Reputation: 59

Why after initializing the array I cannot assign some value in array?

This is my code, after initialized the array, I cannot able to reassign some value in array. It shows array index out of bound exception.

public class NewClass {
    public static void main(String args[]){

        String cl[]={};
        cl[0]="10";      
        System.out.print(cl.length);        
    }    
}

my output:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
    at NewClass.main(NewClass.java:15)
Java Result: 1

Upvotes: 2

Views: 101

Answers (2)

Daniel Perník
Daniel Perník

Reputation: 5872

If you want to declare your array, you can do something like this:

String cl[];

After that you can initialize your array by calling this:

cl = new String[10];

And your System.out.print(cl.length); will return what you want.

Upvotes: 2

Eran
Eran

Reputation: 393956

String cl[]={};

Creates an instance of an empty array, so you can't add any elements to it.

In order to create a non empty array, use either

String cl[] = {"something",...};

or

String cl[] = new String[theArrayLength];

Upvotes: 8

Related Questions