Array

Moderator: admin

ashishrai.kv
Posts: 33
Joined: Tue Jan 09, 2018 2:12 am
Contact:

Array

Post by ashishrai.kv » Tue Feb 13, 2018 10:09 am

Q:-
public static void main(String[] args){
int i=4;
int ia[][][] = new int[0];
System.out.println( ia.length + ", " );
System.out.println( ia[0].length);
System.out.println( ia[0][0].length);
}
}

answer is :-
4,
0
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at Mock.main(Mock.java:9)

why not 4,0,4

admin
Site Admin
Posts: 7142
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: Array

Post by admin » Tue Feb 13, 2018 12:22 pm

Why do you think it should be 4 0 4?

ashishrai.kv
Posts: 33
Joined: Tue Jan 09, 2018 2:12 am
Contact:

Re: Array

Post by ashishrai.kv » Tue Feb 13, 2018 1:12 pm

because value of i=4
and its ia,ia[0],ia
so its 4,0,4

as when i tried ia,ia,ia[o]

i got- 4,4,0.

admin
Site Admin
Posts: 7142
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: Array

Post by admin » Tue Feb 13, 2018 9:55 pm

You are creating a three dimensional array. The size of the first dimension is 4. So ia refers to an array of length 4. Thus, System.out.println( ia.length + ", " ); prints 4.

Each element of this array itself points to a two dimensional array. But you have given the size of each of these two dimensional arrays as 0. i.e. ia[0] basically points to a two dimensional array of length zero. Therefore, System.out.println( ia[0].length); prints 0.

Now, when you try to access ia[0][0], what do you expect ? Is there a 0th element in ia[0]?

ashishrai.kv
Posts: 33
Joined: Tue Jan 09, 2018 2:12 am
Contact:

Re: Array

Post by ashishrai.kv » Wed Feb 14, 2018 3:57 am

I guess ia[0][0] will have have a 0 element as ia[0] doesn't have any other element.

but i am still confused why ArrayIndexOutOfBoundsException was thrown?

admin
Site Admin
Posts: 7142
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: Array

Post by admin » Wed Feb 14, 2018 5:52 am

1. What is the index of the first element in an array?
2. Have you read the JavaDoc API description of ArrayIndexOutOfBoundsException ? That will tell you why is it thrown.

ashishrai.kv
Posts: 33
Joined: Tue Jan 09, 2018 2:12 am
Contact:

Re: Array

Post by ashishrai.kv » Wed Feb 14, 2018 7:48 am

zero.

sure will look into . :D :D

admin
Site Admin
Posts: 7142
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: Array

Post by admin » Wed Feb 14, 2018 8:25 am

ashishrai.kv wrote:zero.
Good, so what will arrayRef[0] point to if the size of an array is zero?

ashishrai.kv
Posts: 33
Joined: Tue Jan 09, 2018 2:12 am
Contact:

Re: Array

Post by ashishrai.kv » Wed Feb 14, 2018 8:46 am

nothing, as the arrayref size is 0 so it will show the ArrayIndexOutOfBound error, if i am not wrong

admin
Site Admin
Posts: 7142
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: Array

Post by admin » Wed Feb 14, 2018 8:58 am

Well, there is your answer then :D

Post Reply

Who is online

Users browsing this forum: No registered users and 5 guests