Stranger compiler error?
I found a strange compiler error when writing the code below. The next
program compiles and runs fine. In fact if I replace the error line
with the null statement it compiles just fine or if I just put the
braces around the error line it compiles. Needless to say, this has
been driving me nuts all morning!
Win XP Pro SP2
JDK 1.6.0-rc build 103
I haven't tried it on an older compiler.
Any ideas?
Thanks,
knute...
import java.util.*;
public class test1 {
public static void main(String[] args) throws Exception {
Hashtable<Integer,String[]> hash =
new Hashtable<Integer,String[]>();
hash.put(1,new String[] {"hello","world"});
hash.put(2,new String[] {"good","bye"});
for (Enumeration<Integer> e=hash.keys(); e.hasMoreElements();)
String[] array = hash.get(e.nextElement()); // <---- error
}
}
C:\com\knutejohnson\redrock\scores>javac test1.java
test1.java:10: '.class' expected
String[] array = hash.get(e.nextElement());
^
test1.java:10: not a statement
String[] array = hash.get(e.nextElement());
^
2 errors
import java.util.*;
public class test1 {
public static void main(String[] args) throws Exception {
Hashtable<Integer,String[]> hash =
new Hashtable<Integer,String[]>();
hash.put(1,new String[] {"hello","world"});
hash.put(2,new String[] {"good","bye"});
for (Enumeration<Integer> e=hash.keys(); e.hasMoreElements();) {
String[] array = hash.get(e.nextElement());
for (int i=0; i<array.length; i++)
System.out.println(array[i]);
}
}
}
--
Knute Johnson
email s/nospam/knute/