Array

Help and support on OCA OCP Java Programmer Certification Questions
1Z0-808, 1Z0-809, 1Z0-815, 1Z0-816, 1Z0-817

Moderator: admin

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

Array

Post by ashishrai.kv »

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: 10036
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: Array

Post by admin »

Why do you think it should be 4 0 4?
If you like our products and services, please help us by posting your review here.

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

Re: Array

Post by ashishrai.kv »

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: 10036
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: Array

Post by admin »

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]?
If you like our products and services, please help us by posting your review here.

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

Re: Array

Post by ashishrai.kv »

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: 10036
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: Array

Post by admin »

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.
If you like our products and services, please help us by posting your review here.

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

Re: Array

Post by ashishrai.kv »

zero.

sure will look into . :D :D

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

Re: Array

Post by admin »

ashishrai.kv wrote:zero.
Good, so what will arrayRef[0] point to if the size of an array is zero?
If you like our products and services, please help us by posting your review here.

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

Re: Array

Post by ashishrai.kv »

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

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

Re: Array

Post by admin »

Well, there is your answer then :D
If you like our products and services, please help us by posting your review here.

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

Re: Array

Post by ashishrai.kv »

thanks :)

Post Reply

Who is online

Users browsing this forum: No registered users and 43 guests