Exception in thread "main" java.lang.NullPointerException

Steeeve

Mitglied
Hallo zusammen,

ich hab eine Fehlermeldung, die mir nach dem was ich im Web so gefunden habe, sagt, dass meine Variable "uebergabe" nicht instanziert wurde.

Die Fehlermeldung:

Exception in thread "main" java.lang.NullPointerException
at pruefungneu_package.PRUEFUNGNEUCLASS.main(PRUEFUNGNEUCLASS.java:64)

Der Quelltext:
Code:
	//Start Sortierung Tueren
		int m = t;
		double [] uebergabe = new double[m];
		
		for (int i=0; i<=m; i++)
		  {
			uebergabe[i] = Tueren[i].maxwert;
		  }
		
		while (m>0)
		  {
			int k = MaSu(m,uebergabe);
			Tueren[m+1].maxwert = Tueren[k].maxwert;
			Tueren[k].maxwert = Tueren[m].maxwert;
			Tueren[m].maxwert = Tueren[m+1].maxwert;
			m=m-1;
		  }

Der Fehler bezieht sich auf die Zeile "uebergabe = Tueren.maxwert;".

Würde mich freuen, wenn mir jemand helfen kann.

Eventuell braucht ihr auch mehr Informationen.. dann sagt mir was ihr braucht.

Danke vorab

Gruß
Steeeve
 
G

Gast2

Gast
Tueren ist null.
Wo wird das Array gefüllt?

Java:
for (int i=0; i<=m; i++)
Bist du dir sicher, dass es hier nicht eher i < m heißen müsste?
 

Steeeve

Mitglied
Der Wert von Tueren.maxwert ist nicht leer, den kann ich mir ausgeben lassen. Jetzt sollen die Werte nur noch sortiert werden.

hier der Quelltext von oben an: (weiter unten die Unterprogramme)

Code:
	public static void main(String[] args) 
	
	{
		// TODO Auto-generated method stub
		String zeile[] = Einlesen();                              //Daten werden über UP aus Artikel.txt eingelesen
		
		class Artikel
		 {
			String anr;
			String abez;
			String maxbestand;
			String preis;
			Double maxwert;
		 }
		
		Artikel [] Tueren = new Artikel[20];
		Artikel [] Rest = new Artikel[20];
						
		int t = 0;
		int r = 0;
		
		for (int i=0; i<20; i++)
		  {
			if (Integer.parseInt(zeile[i].substring(5,7))==22)
			  {
				Tueren[t] = new Artikel();
				Tueren[t].anr = zeile[i].substring(0,8);
				Tueren[t].abez = zeile[i].substring(9,40);
				Tueren[t].maxbestand = zeile[i].substring(48,52);
				Tueren[t].preis = zeile[i].substring(99,106);
				Tueren[t].maxwert = Integer.parseInt(Tueren[t].maxbestand)*Double.parseDouble(Tueren[t].preis);
				t = t+1;
			  }
			
			else
			  {
				Rest[r] = new Artikel();
				Rest[r].anr = zeile[i].substring(0,8);
				Rest[r].abez = zeile[i].substring(9,40);
				Rest[r].maxbestand = zeile[i].substring(48,52);
				Rest[r].preis = zeile[i].substring(99,106);
				Rest[r].maxwert = Integer.parseInt(Rest[r].maxbestand)*Double.parseDouble(Rest[r].preis);
				r=r+1;
			  }
		  }
		
		//Start Sortierung Tueren
		int m = t;
		double [] uebergabe = new double[m];
		
		for (int i=0; i<=m; i++)
		  {
			uebergabe[i] = Tueren[i].maxwert;
		  }
		
		while (m>0)
		  {
			int k = MaSu(m,uebergabe);
			Tueren[m+1].maxwert = Tueren[k].maxwert;
			Tueren[k].maxwert = Tueren[m].maxwert;
			Tueren[m].maxwert = Tueren[m+1].maxwert;
			m=m-1;
		  }



//Unterprogramm Maximumsuche
	public static int MaSu(int n, double [] v)
	{
		int k=0;
		double max = v[0];
		
		for (int i=1; i<=n; i++)
		{
		  if (max < v[i])
		  {
			  k = i;
			  max = v[i];
		  }
		}
		
		return k;
	}
	
	
	
	
	
	
	
	
	
	
	//Unterprogramm zum Einlesen
	public static String[] Einlesen()
	{
	int n = 0;	                                                   // Anzahl der gelesenen Sätze
	String[] zeile;	                                               // Referenzvariable
	zeile = new String[50];	                                       // Array von 50 Strings
		
	try 
	   {	
	    FileReader fr = new FileReader("ARTIKEL.TXT");
	    BufferedReader input =	new BufferedReader(fr);
	    zeile[n] = input.readLine();	   
	
	    while ( zeile[n] != null )	                               // Ist zeile[n] noch eine "richtige" Textzeile?
	      {	
		   n = n+1;
	       zeile[n] = input.readLine();
	      }	                                                       // while-Ende
	    input.close();
	    }	                                                       // try-Ende
	
	catch (IOException lesefehler)
	   {	
		System.out.println("Lesefehler " + lesefehler);
	   }
	return zeile;
	}
	
}
 

XHelp

Top Contributor
1. Poste Java-Code auch in Java-Tags, dann sieht man auch die Zeilennummer
2. Mach mal die Schleife statt
Code:
i<=m
nur bis
Code:
i<m
 

Junk4rvin

Mitglied
Ich weiß nicht, ob ich das so richtig gesehen habe..
Aber du definierst

Java:
int t = 0

Und willst dann in der for-Schleife für 20 Zeilen jeweils einen Eintrag für t (=0) schreiben.

Wenn du dann das Ganze sortieren willst,
fragst du ab:

Java:
int m = t;
for (int i=0; i<=m; i++){}

Dabei ist t immernoch = 0; sprich er läuft nicht mal ein einziges Mal durch.

mfg
 
Zuletzt bearbeitet:

Junk4rvin

Mitglied
Aber das wird bei Java so übermittelt.
Wenn das in einer if-Schleife erhöht wird, nimmt er glaube ich trotzdem den Wert wie er oben definiert wurde, weil er in eine if-Schleife eventuell gar nicht kommt.

Hatte das auch schon ein Mal, auch wenn ich erst seit ca. einem Monat mit Java programmiere. :)
 

XHelp

Top Contributor
Öhm, nö?

Du meinst vermutlich folgendes:
Java:
Scanner sc;
if (Math.random()>0.5) {
 sc = new Scanner(System.in);
}
System.out.println(sc.nextLine()); //Fehler
Das ist aber etwas völlig anderes
 

Steeeve

Mitglied
Hallo zusammen,

danke schon mal für die zwischenzeitlichen Antworten.

Ihr hattet recht, in der for-Schleife muss i<m statt i<=m.

Nun hab ich aber eine neue Fehlermeldung :(

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 9
at pruefungneu_package.PRUEFUNGNEUCLASS.MaSu(PRUEFUNGNEUCLASS.java:127)
at pruefungneu_package.PRUEFUNGNEUCLASS.main(PRUEFUNGNEUCLASS.java:69)

das betrifft folgende Teile:

im main-Teil (Zeile: "int k = MaSu(m,uebergabe);")
Java:
//Start Sortierung Tueren
		int m = t;
		double [] uebergabe = new double[m];
		
		for (int i=0; i<m; i++)
		  {
			uebergabe[i] = Tueren[i].maxwert;
		  }
		
		while (m>0)
		  {
			int k = MaSu(m,uebergabe);
			Tueren[m+1].maxwert = Tueren[k].maxwert;
			Tueren[k].maxwert = Tueren[m].maxwert;
			Tueren[m].maxwert = Tueren[m+1].maxwert;
			m=m-1;
		  }

im Unterprogramm Maximumsuche (Zeile: "if (max < v)")

Java:
//Unterprogramm Maximumsuche
	public static int MaSu(int n, double [] v)
	{
		int k=0;
		double max = v[0];
		
		for (int i=1; i<=n; i++)
		{
		  if (max < v[i])
		  {
			  k = i;
			  max = v[i];
		  }
		}
		
		return k;
	}

Zur Info noch welche Werte sich hiter den Variablen verbergen:
t = 8 ist (also 9 artikel) und r = 10 (Also 11 Artikel).

Das aufteilen in die zwei Listen "Tueren" und "Rest" über die if-Schleife funktioniert also.
Ich hab mir die Artikelnummer (anr) und auch mal die Maximalwerte (maxwert) für die Liste Tueren ausgeben lassen.

Infolgedessen ist in dem Teil, wo "maxwert" sortiert werden soll:

m = 8 (weil t = 8), somit wird uerbergabe 9 Werte zugewiesen.

Auch diese habe ich mir mal ausgeben lassen:
Code:
Maxwert : 460000.0
Maxwert : 576200.0
Maxwert : 1021385.0
Maxwert : 975450.0
Maxwert : 975450.0
Maxwert : 1289570.0
Maxwert : 1315628.0
Maxwert : 892416.0
Maxwert : 882240.0

Jetzt hängst an der Maximumsuche / Sortierung wahrscheinlich.

Eine allgemeine Frage noch, gibts irgendwo ein Glossar, wo ich mal nachschauen kann, was die einzelnen Fehler bedeuten?

Gruß
Steeeve
 

jgh

Top Contributor
ohne viel, geschweige denn alles von deinem Programm gelesen zu haben...würde ich behaupten, dass du die for-Schleife nur solange laufen lassen darfst, wie i echtKleiner der Länge des Arrays...:

Java:
public static int MaSu(int n, double[] v) {
		int k = 0;
		double max = v[0];

		for (int i = 1; i < v.length; i++) {

[edit]das ist kein Unterprogramm, sondern eine Methode... ;)

und ein Glossar kenne ich jetzt nicht, aber die API zu Exceptions
[/edit]
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
M Exception in thread "main" java.util.NoSuchElementException Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
I Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 Java Basics - Anfänger-Themen 3
R Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 10
C Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 Java Basics - Anfänger-Themen 3
J Exception in thread "main" Java Basics - Anfänger-Themen 1
L Fehler: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 4
N Threads Exception in thread "main"... Feher bei dem Versuch ein Radius zu berechnen Java Basics - Anfänger-Themen 4
A Code läuft nicht, Fehlermeldung Exception in thread "main" java.lang.Error: Unresolved compilation " Java Basics - Anfänger-Themen 11
P Exception in thread "main" java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 1
K Exception in thread "main" Java Basics - Anfänger-Themen 7
L Compiler-Fehler Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 2
F Exception in thread main java.lang.StackOverflowError Java Basics - Anfänger-Themen 3
A Compiler-Fehler Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 7
T Problem mit Eclipse? Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 4
M Exception in thread "main" java.lang.NoClassDefFoundError: MeineKlasse Java Basics - Anfänger-Themen 12
S Umgebungsvariable Exception in thread "main" java.lang.UnsatisfiedLinkError: no J3D in java.librar y.path Java Basics - Anfänger-Themen 15
M Klassen Exception in thread "main" java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 2
D Exception in thread "main" Java Basics - Anfänger-Themen 8
A Exception in thread "main" Java Basics - Anfänger-Themen 7
S Exception in thread "main" Java Basics - Anfänger-Themen 3
B Exception in thread "main" java.lang.NullPointerException Fehler Hilfe! Java Basics - Anfänger-Themen 4
L Bubblesort: Exception in Thread "main" Java Basics - Anfänger-Themen 5
A Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 16
A GELÖST -- Exception in thread "main" Java Basics - Anfänger-Themen 3
B Fehlermeldung - Exception in thread "main" java.lang.Error: Unresolved compilation pr Java Basics - Anfänger-Themen 16
E Fehler: "Exception in thread "main" java.lang.NoSuchMethodError" Java Basics - Anfänger-Themen 15
G Fehler: Exception in thread main java.lang.noClassDefFound Java Basics - Anfänger-Themen 7
L Exception in thread "main" java.util.NoSuchElement Java Basics - Anfänger-Themen 4
A Do/While Problem (Exception in thread "main" java. Java Basics - Anfänger-Themen 4
M "exception in thread "main" java.lang.NullPoi Java Basics - Anfänger-Themen 2
S Exception in thread "main" java.lang.UnsupportedCl Java Basics - Anfänger-Themen 4
P Exception in thread "main" Java Basics - Anfänger-Themen 4
V Exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 21
S Exception in thread "main" java.lang.NoSuchMethodE Java Basics - Anfänger-Themen 3
NightmareVirus Exception in thread "main" java.lang.NoSuchMethodE Java Basics - Anfänger-Themen 8
A "Exception in thread "main" java.lang.NoCLass Java Basics - Anfänger-Themen 10
N exception in thread main . Java Basics - Anfänger-Themen 3
C Exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 9
vogella Exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 4
R Exception in thread "main" java.lang.NoSuchMethodE Java Basics - Anfänger-Themen 6
C exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 7
A Fehlermeldung: Exception in thread "main" java.lan Java Basics - Anfänger-Themen 3
H Exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 3
R Exception in Thread "main" . Kommandozeile/Netbean Java Basics - Anfänger-Themen 8
L Exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 4
R Exception in thread "main" java.lang.NullPointerEx Java Basics - Anfänger-Themen 10
B Exception in thread "main"... Java Basics - Anfänger-Themen 3
L Exception in thread "main" java.lang.NoSuchMethodE Java Basics - Anfänger-Themen 3
K Exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 8
J Exception in thread "main" java.langClassNoFoundEr Java Basics - Anfänger-Themen 2
H Exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 5
B Fehler: Exception in Thread "main" java.lang.NoCla Java Basics - Anfänger-Themen 2
G Exception in thread "main" java.lang.NoClassDefFou Java Basics - Anfänger-Themen 2
B Compiler-Fehler Fehlermeldung Exception in thread, falsche Eingabewert Java Basics - Anfänger-Themen 2
S Kriege Fehler "Exception in thread" beim Benutzen von SubStrings. Java Basics - Anfänger-Themen 2
B Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException Java Basics - Anfänger-Themen 8
S Java memory fehler: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap spa Java Basics - Anfänger-Themen 5
V Threads Exception in Thread behandeln Java Basics - Anfänger-Themen 3
D Exception in thread "AWT-EventQueue-0" Java Basics - Anfänger-Themen 8
C Exception in thread "AWT-EventQueue-0 Java Basics - Anfänger-Themen 15
M Exception in thread "AWT-EventQueue-0" Java Basics - Anfänger-Themen 7
1 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException Java Basics - Anfänger-Themen 5
A Exception aus Thread werfen Java Basics - Anfänger-Themen 14
J Datentypen Exception in thread "AWT-EventQueue-0"?? Java Basics - Anfänger-Themen 4
T Thread 2x starten verursacht Exception Java Basics - Anfänger-Themen 3
Y Exception in thread Java Basics - Anfänger-Themen 11
Spin Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: data must Java Basics - Anfänger-Themen 10
O java.lang.NoClassDefFoundError Exception in thread "mai Java Basics - Anfänger-Themen 5
S Exception in thread Java Basics - Anfänger-Themen 7
A Exception in thread "Thread-33" java.lang.NoClassD Java Basics - Anfänger-Themen 10
F Fehlermeldung: Exception in thread. Java Basics - Anfänger-Themen 17
G Exception in thread Java Basics - Anfänger-Themen 9
H exception in thread mainjava.lang.noclass ... Java Basics - Anfänger-Themen 3
I Exception wird gefangen, aber trotzdem in Error Log? Java Basics - Anfänger-Themen 10
W Null-Pointer Exception beim Programmstart Java Basics - Anfänger-Themen 8
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
Fiedelbambu Exception in Application constructor Java Basics - Anfänger-Themen 3
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
F abbruch Exception lässt sich nicht erstellen Java Basics - Anfänger-Themen 2
U Warum kriege ich hier eine nullpointer exception, sehe den Fehler nicht (swing) Java Basics - Anfänger-Themen 1
N Exception beim Verwenden von Arraylist? Java Basics - Anfänger-Themen 10
S JavaKara Null Exception Error Java Basics - Anfänger-Themen 4
T Eigene Exception - ohne werfen abfangen Java Basics - Anfänger-Themen 2
LiFunk Exception: es dürfen nur Nummern eingelesen werden Java Basics - Anfänger-Themen 6
low_in_the_head Eigene Exception nutzen Java Basics - Anfänger-Themen 4
1 Exception Java Basics - Anfänger-Themen 2
I JAX-RS Exception Handling Java Basics - Anfänger-Themen 4
L Meine erste eigene Exception Klasse Java Basics - Anfänger-Themen 10
J null exception Array Java Basics - Anfänger-Themen 5
H Frage zu Throw Exception Java Basics - Anfänger-Themen 2
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
C Exception-Frage Java Basics - Anfänger-Themen 3
I Exception bei Button mit wait() und notifyAll() Java Basics - Anfänger-Themen 3
N Wie teste ich eine geworfene Exception? Java Basics - Anfänger-Themen 8
R Methoden ArrayList clonen wirft exception Java Basics - Anfänger-Themen 3
D Scanner- Exception NoSuchElementException Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben