2017-02-13 19 views
0

Ok、1つの値を保持しながら配列内のオブジェクトの順序を変更する

私は本当にJava(およびプログラミング全般)の新機能ですので、奇妙なことを見ても驚かないでください。

基本的には、配列から要素を1つ「削除」したいので、配列要素の順序を変更することです。

たとえば、参加者2がノックアウトされると、私は彼を削除します。最高のインデックスを持つ参加者が参加者2を置き換えてから、最高のインデックス参加者の値をデフォルトにリセットします。

Fighter k1=participant[jList1.getSelectedIndex()]; 
Fighter k2=participant[jList2.getSelectedIndex()]; 

k1.fightsWith(k2); 
if (k1.refresh()==true) {  
    if (k1.getHP()<=0) { 
    participant[k1.getID()]=participant[amount]; 
    participant[k1.getID()].setID(k1.getID()); 
    participant[amount].reset(); 
    amount-=1; 
    } else if(k2.getHP()<=0){ 
    participant[k2.getID()]=participant[amount]; 
    participant[k2.getID()].setID(k2.getID()); 
    participant[anzahl].reset(); 
    amount-=1; 
    } 
    jList1Model.clear(); 
    jList2Model.clear(); 
    for (int i=0;i<amount;i++) { 
    if (participant[i].getID()<=20) { 
     jList1Model.addElement(participant[i].getName()); 
     jList2Model.addElement(participant[i].getName()); 
    } 
    } 
} 

ラインparticipant[k1.getID()]=participant[amount]; participant[amount].reset(); は、ここに私に迷惑を与えています。

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException 

答えて

0

コードのデバッグを学びます。それは助けになるはずです。

また、私の2セントと同じように、あなたの2つの可能性の高いNULLポインタの候補では、この行に遭遇する前に、通過しているように見えるk1の操作があるので、

関連する問題