簡體   English   中英

傳遞給另一個類Java后指向空位置的數組

[英]Array pointing to a null position after being passed to another class, Java

我的代碼遇到了一個奇怪的問題,我做了一個標簽數組,以便當我將該數組傳遞給另一個類時,該類可以讀取並知道我要移動並更改其位置的標簽的位置,在所有地方嘗試打印,以了解數組傳遞的內容,然后再將數組傳遞給另一個類,然后放置打印,那一刻該打印具有正確的信息,但是當我告訴按鈕從以下位置調用方法時我的另一個類並傳遞它,我得到了NullPointerException。

這就是我制作數組的方式

JLabel[] listabolaslabels ;


    Partida partida;


    public Gui() {
        initComponents();
        //partida = new Partida();
        setLocationRelativeTo(null);
        setResizable( false );



        this.listabolaslabels = new JLabel[]{

            //Bolas Nivel 1, Jugador 1
            this.bolaj1,
            this.nivel1j1bola1,
            this.nivel1j1bola2,
            this.nivel1j1bola3,
            //Bolas Nivel 2, Jugador 1
            this.nivel2j1bola1,
            this.nivel2j1bola2,
            this.nivel2j1bola3,
            //Bolas Nivel 3, Jugador 1
            this.nivel3j1bola1,
            this.nivel3j1bola2,
            this.nivel1j1bola3,


            //Bola Comodin
            this.labelcomodin,


            //Bolas Nivel 1, Jugador 2
             this.nivel1j2bola1,
            this.nivel1j2bola2,
            this.nivel1j2bola3,
            //Bolas Nivel 2, Jugador 2
            this.nivel2j2bola1,
            this.nivel2j2bola2,
            this.nivel2j2bola3,
            //Bolas Nivel 3, Jugador 12
            this.nivel3j2bola1,
            this.nivel3j2bola2,
            this.nivel3j2bola3};

    }

有按鈕執行的代碼

    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        System.out.println(listabolaslabels[0]);

When the program get's to this point it shows the nullpointerexception
        partida.getlista(listabolaslabels[0]);

    } 

同時,在另一類中,在這種情況下為“ Partida”

public void getlista(JLabel lista){
        //System.out.println(lista);
    }

這就是方法,我正在測試

我相信您誤認了錯誤的來源。 您聲明字段partida但不要在任何地方初始化它。 默認情況下,此字段初始化為null

在嘗試調用其getlista()方法之前,請確保partida不為null ,否則您將獲得NPE。

您尚未顯示所有代碼,因此可能是您確實將partida設置為某處的某個東西,但是您應該在獲取NPE時確認它實際上不是null

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM