15.9.2
Example: Array Creation Evaluation Order
EXPRESSIONS
15.9.2   Example: Array Creation Evaluation Order
In an array creation expression ( 15.9), there may be one or more dimension
expressions, each within brackets. Each dimension expression is fully evaluated
before any part of any dimension expression to its right.
Thus:
class Test {
public static void main(String[] args) {
int i = 4;
int ia[][] = new int[i][i=3];
System.out.println(
"[" + ia.length + "," + ia[0].length + "]");
}
}
prints:
[4,3]
because the first dimension is calculated as
4
 before the second dimension expres 
sion sets
i
 to
3
.
If evaluation of a dimension expression completes abruptly, no part of any
dimension expression to its right will appear to have been evaluated. Thus, the
example:
class Test {
public static void main(String[] args) {
int[][] a = { { 00, 01 }, { 10, 11 } };
int i = 99;
try {
a[val()][i = 1]++;
} catch (Exception e) {
System.out.println(e + ", i=" + i);
}
}
static int val() throws Exception {
throw new Exception("unimplemented");
}
}
prints:
java.lang.Exception: unimplemented, i=99
because the embedded assignment that sets
i
 to
1
 is never executed.
318






footer




 

 

 

 

 Home | About Us | Network | Services | Support | FAQ | Control Panel | Order Online | Sitemap | Contact

java hosting

 

Our partners: PHP: Hypertext Preprocessor Best Web Hosting Java Web Hosting Inexpensive Web Hosting  Jsp Web Hosting

Cheapest Web Hosting Jsp Hosting Cheap Hosting

Visionwebhosting.net Business web hosting division of Web Design Plus. All rights reserved