Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Please hava a look at this question about array !!!

 
kevin saber
Greenhorn
Posts: 21
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
ExamLab for sjcp 6.0 wrote:
A question from ExamLab for sjcp 6.0:
Which one is the valid statement?

A int[] it1 = new int[0]{};
B new int[2];
C int[] it2 = new int[][]{{1}}[0];
D int[][] it3 = new int[]{0}[0][0];
E int it5 = new int[2]{}[]


The answer is C.

Doesn't it covert from int[][][] to int[] ?
And about answer D, the explaination says it coverts from int[] to int[][]. Why doesn't it actually covert int[][][] to int[][] ?
 
Devaka Cooray
ExamLab Creator
Marshal
Pie
Posts: 4680
329
Chrome Eclipse IDE Google App Engine IntelliJ IDE jQuery Postgres Database Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Please QuoteYourSources and please UseAMeaningfulSubjectLine
 
Harpreet Singh janda
Ranch Hand
Posts: 317
Eclipse IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
It does not convert int[] to int[][].

A 2 dimensional array is as array of arrays.



code is assigning a one dimensional array to one dimensional array. int[][]{{1}}[0] is creating a two dimensional array and initializing the first dimension only then the code is using the [0] operator to get the array at 0th location and array will be one dimension array. So it is legal to assign it to one dimension array.


int[][] it3 = new int[]{0}[0][0]; is not legal because [0][0] will give us the element at that location. That element will be of type int and we can not assign an int to an array.
 
Prithvi Sehgal
Ranch Hand
Posts: 774
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In case of

A- It is creating an anonymous array. You cannot specify the dimension when you create an anonymous array. So statement A is invalid.
C- It is creating a two dimensional anonymous array and it is assigning the first array that is the 0 one to the one dimension array which
is perfectly legal. Because 2-D arrays are array or arrays.
E- has the same problem an anonymous array can't have dimensions mentioned.

Later is very well explained by harpreet.

Hope this helps,
 
kevin saber
Greenhorn
Posts: 21
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Devaka Cooray wrote:Please QuoteYourSources and please UseAMeaningfulSubjectLine


Sorry for that
 
kevin saber
Greenhorn
Posts: 21
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Harpreet Singh janda wrote:It does not convert int[] to int[][].

A 2 dimensional array is as array of arrays.



code is assigning a one dimensional array to one dimensional array. int[][]{{1}}[0] is creating a two dimensional array and initializing the first dimension only then the code is using the [0] operator to get the array at 0th location and array will be one dimension array. So it is legal to assign it to one dimension array.


int[][] it3 = new int[]{0}[0][0]; is not legal because [0][0] will give us the element at that location. That element will be of type int and we can not assign an int to an array.


Thank you. I think i have caught it
 
kevin saber
Greenhorn
Posts: 21
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Prithvi Sehgal wrote:In case of

A- It is creating an anonymous array. You cannot specify the dimension when you create an anonymous array. So statement A is invalid.
C- It is creating a two dimensional anonymous array and it is assigning the first array that is the 0 one to the one dimension array which
is perfectly legal. Because 2-D arrays are array or arrays.
E- has the same problem an anonymous array can't have dimensions mentioned.

Later is very well explained by harpreet.

Hope this helps,


Oh~~I see it. Thank you
 
Devaka Cooray
ExamLab Creator
Marshal
Pie
Posts: 4680
329
Chrome Eclipse IDE Google App Engine IntelliJ IDE jQuery Postgres Database Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
kevin saber wrote:Sorry for that

NoNeedToSaySorry
But, please QuoteYourSources now - it's mandatory. Questions without a proper source, will be deleted.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic