2011-05-30 100 views
-4

爲什麼我在執行for循環時得到這個空指針異常?for循環中的空指針異常

在 的javax在在 javax.swing.Timer.fireActionPerformed(未知來源) A3JPanel.actionPerformed(A3JPanel.java:141)線程 「AWT-EventQueue的-0」 顯示java.lang.NullPointerException異常。 swing.Timer $ DoPostEvent.run(來源不明)在 java.awt.event.InvocationEvent.dispatch(來源不明)

我的代碼:

for (int i = 0; i < dots.length; i++) { 
dots[i].moveDots(); 
} 
+5

這可能是因爲'dots'數組或其中的一個元素是'null'。你能否提供更多關於周圍代碼的上下文,以便我們可以試着瞭解爲什麼會這樣? – templatetypedef 2011-05-30 23:41:24

+2

這不是空指針異常。這是一些代碼。 – sje397 2011-05-30 23:43:04

+2

我敢打賭,你已經創建了一個點的數組,但你還沒有填充它的點對象。那是我的SWAG。解決方案,首先遍歷數組並填充新的Dot對象。 – 2011-05-30 23:45:27

回答

6

你必須初始化數組的每個元素,才能在他們做的操作,這樣

Dot[] dots = new Dot[10]; 

for (int i = 0; i < dots.length; i++) { 
    dots[i] = new Dot(); 
    dots[i].moveDots(); 
} 
0

你的堆棧跟蹤信息是不是非常有幫助,但即使你初始化dot陣列中的所有對象Dot,你moveDots()方法可能負責NullPointerException。你能向我們展示一些你的代碼,所以我們知道問題在哪裏?這顯然不是你發佈的那麼一點點。