Win a copy of The Java Performance Companion this week in the Performance forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

what difference does it make ...arrayini

 
srinivas bolloju
Ranch Hand
Posts: 112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
in class below..,
1) what is the diff between
int anar[]=new int[]{1,2,3};
int anar[]={1,2,3};
2)i thought "int anar[]=new int[]{1,2,3};" would give a compiler err, does the above statement signify double dimension array...?
public class arrayini {
public static void main(String argv[]){
int anar[]=new int[]{1,2,3};
int anar[]={1,2,3};
System.out.println(anar[1]);
}
}
 
Sean Casey
Ranch Hand
Posts: 625
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
1). There isn't a differnce. The second option is just a shorter version of doing it.
2).That is not a multi-dimensional array. A multi-dimensional array would look something like this:
int []i[]={{},new int[]{}};
or even:
int i[][]={{1,2,},new int[2]};
But you really needn't worry about those right now.

 
Anshul Manisha
Ranch Hand
Posts: 74
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Srini
There is not much difference in the two syntax. For the second one compiler provides you with a new for creating the array. You can use second form of initialization only while declaring the array.
The first form can be useful in passing arrays to the methods. For example if your method is
aMethod(Object[] a)
you can call
aMethod(new String[]{"one","two","three"});
aMethod(new Integer[]{new Integer(1), new Integer(2)});
etc.

[This message has been edited by Anshul Manisha (edited July 08, 2001).]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic