看板 java 關於我們 聯絡資訊
import java.io.*; import java.util.*; class transMap { public static Map<String,String>[] transMap; public static Map<String,Integer> table = new HashMap<String,Integer>(); public static String[] table2; static { for(int i=0;i<82671;i++) { System.out.println(i); transMap[i] = new HashMap<String,String>(); } ... } public static void main(String[] arg) { ... } } 各位大大好 這個程式在transMap[i] = new HashMap<String,String>();這一行 丟出ExceptionInInitializerError NullPointerException 請問這是什麼問題呢? 我本來想要用 public static Map<String,String>[] transMap = new HashMap<String,String>[82671](); 可是我看這種宣告不能用(不能編譯) 爬文看到物件陣列要用迴圈跟new去初使化的 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.137.202
biowave:你沒有先實體化transMap陣列吧... 11/22 15:20
gech2001:怎麼實體化transMap呢 是new指配給它的意思嘛? 11/22 15:31
※ 編輯: gech2001 來自: 61.228.137.202 (11/22 15:59)
H45:new HashMap[82671]; 11/22 16:35
gech2001:樓上大大的方法可以 11/22 23:58
gech2001:可是在SUN的網頁翻到JAVA不能 genetic array creation 11/23 00:01
TonyQ:你誤會了new HashMap[size];跟 new HashMap() 的差異. 11/23 15:29
gech2001:有什麼樣的差別呢? 11/24 15:37