2016-03-24 9 views
0

Ich versuche, ein Datum (höchsteZahl) mit einem langen (höchsten) zu setzen, aber es wirft eine NullPointer-Ausnahme, ich kann nicht herausfinden, warum.Android setTime() werfen NullPointer Exception

public static Date highestNumber = null; 

long highest = 0; 
    for (int x = 0;x <numberofData - 2;x++){ 
     long first = Array.Stop.get(x).getTime(); 
     long next = Array.Stop.get(x+1).getTime(); 
     if(x==0){highest = first;} 
     if (highest < next){ 
      highest = next; 
     } 
    } 
    highestNumber.setTime(highest); 

Ausnahme wird auf die setTime() Zeile geworfen. höchste erhält einen gültigen Wert von 1523328768914

Fehler: java.lang.NullPointerException: Der Versuch, virtuelle Methode 'Leere java.util.Date.setTime (long)' auf ein Null-Objekt Referenz

bearbeiten aufzurufen: I don ‚t so fühlen ist ein Duplikat„Was ist ein Nullpointer, da ich nicht wusste war ein Datum initiaized werden. ich dachte, es war nur eine Variable wie eine Kette.

+0

Sie nie 'highestNumber' auf etwas anderes als null setzen. –

Antwort

0

Statt

highestNumber.setTime(highest); 

Verwenden Sie

highestNumber= new Date(highest); 

Sie haben Ihr Objekt highestNumber nicht initialisiert. Vor der Verwendung bei highestNumber.setTime(highest); Deshalb NullPointerException.

+0

Das funktioniert, danke !! – dec0yable

0

Sie haben highestNumber nicht initialisiert. Sie müssen highestNumber so initialisieren,

public static Date highestNumber = new Date(); 
Verwandte Themen