return wert ist null :(

Status
Nicht offen für weitere Antworten.
J

Joola

Gast
Hallo Leute,

ich hab da ein Problem an dem ich schon ziemlich lange sitze und ich bekomms einfach nicht hin.

Das Problem ist folgendes:
Die Methode UnterMatrix gibt mir als return-wert res = null zurück und ich verstehe nicht wieso.
Lasse ich mir res.m in der Schleife ausgeben stimmt alles, also kann man sagen die Methode funktioniert.
Ich glaube ich hab da irgendwo nen Fehler in der Matrix...

Sieht das vielleicht jemand auf den ersten Blick?



Code:
class Matrix {

	    public double[][] m;
	    public int zeilenZahl;
	    public int spaltenZahl;
	    public double res;

	Matrix (int zeilenZahl, int spaltenZahl){
		 m = new double[zeilenZahl][spaltenZahl];
	}

....

Code:
	private Matrix UnterMatrix(int x, int y) {
		Matrix res = new Matrix(zeilenZahl-1, spaltenZahl-1);
		for(int i = 0; i < zeilenZahl-1; i++)
			for(int j = 0; j < spaltenZahl-1; j++)
				res.m[i][j] = m[i<x?i:i+1][j<y?j:j+1];
		return  res;
	}


Schönen Gruß
Joola
 
G

Guest

Gast
Hi,

ich kanns mir auch nicht erklären...
Aber wenn ich das hier abläuft kommt "RETURN null" raus

Code:
 private Matrix UnterMatrix(int x, int y) {
      Matrix res = new Matrix(zeilenZahl-1, spaltenZahl-1);
      for(int i = 0; i < zeilenZahl-1; i++)
         for(int j = 0; j < spaltenZahl-1; j++)
            res.m[i][j] = m[i<x?i:i+1][j<y?j:j+1];

System.out.println("RETURN " +res);

      return  res;
   }


:-(
 
J

Joola

Gast
Danke für deine Antwort! Ja das ist es :)

Code:
public String toString(){
		
    return null;
	}


Der Code war zum Teil vorgegeben und diesen Abschnitt hatte ich noch nicht behandelt. Allerdings bin ich jetzt nicht sicher was ich da hinschreiben soll. Hab zwar danach gesucht, aber ganz schlüssig ist es mir nicht...

Wäre über jeden Tipp dankbar!
 

Wildcard

Top Contributor
Ist doch erstmal egal, das ist nur für eine Ausgabe.
Wichtig ist die Tatsache das eben nicht null zurückgegeben wird.
 
J

Joola

Gast
Hi,

ich hab einiges versucht, leider immer noch ohne Erfolg.
Jetzt habe ich den toString komplett gelöscht, damit bekomme ich dann folgende Ausgabe für res:

RETURN @171f189

Bin für jeden weiteren Tipp dankbar =)

Gruß
 

Wildcard

Top Contributor
Das ist ja auch völlig ok, das ist Klassenname + Hashcode, die Standard toString Implementierung.
Ich dachte es geht dir um die Methode, da ist doch die Ausgabe egal.
Was möchtest du denn haben?
 
J

Joola

Gast
Hey Wildcard!

also die Schleife belegt res.m mit Werten wie
1.0
2.0
...

Diese Werte möchte ich mit res übergeben und sie mir in der Console anzeigen lassen.

Danke schonmal für deine Hilfe, das Problem treibt mich echt in den Wahnsinn gerade
:bahnhof:

Code:
 private Matrix UnterMatrix(int x, int y) {
      Matrix res = new Matrix(zeilenZahl-1, spaltenZahl-1);
      for(int i = 0; i < zeilenZahl-1; i++)
         for(int j = 0; j < spaltenZahl-1; j++)
            res.m[i][j] = m[i<x?i:i+1][j<y?j:j+1];
      return  res;
   }



Gruß
 

Wildcard

Top Contributor
Dann musst du eine Methode schreiben die über das Array deiner Matrix läuft und entsprechend deinen Vorstellungen Werte ausgibt.
 
J

Joola

Gast
Hm...

genaugenommen sieht das ganze so aus:

Code:
	double determinate() throws IllegalStateException {
			if (zeilenZahl != spaltenZahl){
			 throw new IllegalStateException("Matrix nicht Quadratisch");
			}
			if (zeilenZahl == 1){
			 return m[0][0];
			}else {
			 double res = 0.0;
			 int f = -1;
			 
			 for (int i = 0; i < zeilenZahl; ++i) {
			  f = f * -1;
			  res = f * (m[i][0] * coMatrix(i,0).determinate()+res);
			   System.out.println("Determi"+res);
			}		
			return res;
			}}

Code:
private Matrix coMatrix(int x, int y) {
		Matrix res = new Matrix(zeilenZahl-1, spaltenZahl-1);
		for(int i = 0; i < zeilenZahl-1; i++)
			for(int j = 0; j < spaltenZahl-1; j++)
				res.m[i][j] = m[i<x?i:i+1][j<y?j:j+1];
		System.out.println("RETRUN" +res);
		return res;
	}


Ich dachte eigentlich das nur ein kleiner Fehler irgendwo drinsteckt und res dehalb nicht in determinante() ankommt.

Vielen Dank schonmal für deine Tipps :)
 
G

Guest

Gast
Hallo Wildcard,

irgendwie klappts immer noch nicht so ganz. Ich habe die toString Methode jetzt mal ganz rausgenommen. Wenn ich mir das hier ausgeben lasse bekomme ich nur diese zeichen:

Code:
private Matrix coMatrix(int x, int y) {
		Matrix res = new Matrix(zeilenZahl-1, spaltenZahl-1);
		for(int i = 0; i < zeilenZahl-1; i++){
			for(int j = 0; j < spaltenZahl-1; j++){
				
				res.m[i][j] = m[i<x?i:i+1][j<y?j:j+1];
				}}
	   System.out.println("RES"+res);
		return res;
	
	}

RES Matrix@17cec96


Gruß
 

Wildcard

Top Contributor
Ich hab doch schon versucht dir zu erklären das es sich um die ganz Normale Ausgabe von toString handelt.
Wenn du was anderes willst, implementiers.
Code:
public String toString(){
    return "blubb";
}

Jetzt kommt da nicht mehr RES Matrix@17cec96, sonder RES blubb raus.
Keiner hier kann wissen wie die Ausgabe denn nun genau aussehen soll, also musst du das schon alleine hinbekommen.
Bau dir in toString einen String zusammen der alle Informationen die du bei System.out sehen willst enthält, und gut ist.
 
G

Guest

Gast
Hallo,

nochmals danke für deine Antwort. Es geht vielmehr darum die Werte in eine andere Methode zu übergeben um damit eine Rechnung durchzuführen.
In Determinate wir coMatrix aufgerufen, aber coMatrix gibt kein brauchbares Ergebniss zurück obwohl res.m[][] mit den richtigen Werten befüllt wurde...

Sorry wenn ich nerve...
 

Wildcard

Top Contributor
Anonymous hat gesagt.:
In Determinate wir coMatrix aufgerufen, aber coMatrix gibt kein brauchbares Ergebniss zurück obwohl res.m[][] mit den richtigen Werten befüllt wurde...
Doch!
Die Werte stehen in deinem Matrix Objekt und das gibst du zurück!
 
G

Guest

Gast
Aber warum gibt bekomme ich das Ergbniss 0.00 bei folgendem in Determ.?

Code:
res =  coMatrix(i,0).determinate();
			   System.out.println("Test"+res);
 

Wildcard

Top Contributor
Weil es das richtige Ergebnis ist? Weil eine deiner Methoden falsch rechnet? Weil du das Matrix Objekt falsch benutzt/befüllt hast?
Was soll man dazu sagen, ich weiß ja nichtmal was rauskommen sollte :wink:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Warum return die Methode den Wert nicht Java Basics - Anfänger-Themen 5
D Methoden Return-Wert wird nicht ausgegeben Java Basics - Anfänger-Themen 3
G return-wert für eine Methode Java Basics - Anfänger-Themen 1
C Einige Anfängerfragen (Return-Wert, Exception...) Java Basics - Anfänger-Themen 11
T return-Wert verwenden? Java Basics - Anfänger-Themen 12
A Falscher Return-Wert Java Basics - Anfänger-Themen 2
J Warum kein return wert? Java Basics - Anfänger-Themen 10
A HSSFWorkbook als Return-Wert für Input in andere Methode Java Basics - Anfänger-Themen 5
M Problem mit return Wert Java Basics - Anfänger-Themen 5
E Verständnis frage zum return wert eines Arrays Java Basics - Anfänger-Themen 7
S sauberer Stil von return Wert (try, catch, finally) Java Basics - Anfänger-Themen 9
T Array-Wert zurückgeben -return- Java Basics - Anfänger-Themen 10
G switch-case mit Fehler auf return-Wert-Typ Java Basics - Anfänger-Themen 2
MiMa Java Doc mehrere Return Parameter Java Basics - Anfänger-Themen 11
A Return in While Schleife Java Basics - Anfänger-Themen 6
J Rekursive Funktion und return statement Java Basics - Anfänger-Themen 3
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
S Methoden Return Rückgabewert wird nicht übergeben Java Basics - Anfänger-Themen 8
schredder Strings und reguläre Ausdrücke - Methode mit return string.matches Java Basics - Anfänger-Themen 5
I Return Array Java Basics - Anfänger-Themen 4
Q return Ausgabe Java Basics - Anfänger-Themen 4
javapingu Variablenwerte ändern ohne return Statement? Java Basics - Anfänger-Themen 7
C Ausgabe boolean return ((n==9)||(n==0)); Java Basics - Anfänger-Themen 13
G return 1 + methode Java Basics - Anfänger-Themen 4
H Methode mit Array als Rückgabe This method must return a result of Type int[] Java Basics - Anfänger-Themen 2
JD_1998 Hilfsmethode if return funktioniert nicht Java Basics - Anfänger-Themen 2
J Missing Return Statement Java Basics - Anfänger-Themen 11
T Return einer anderen Methode herausfinden Java Basics - Anfänger-Themen 9
C ArrayList mit return zurückgeben Java Basics - Anfänger-Themen 13
M kann man return in nur einer Methode einsetzen? Java Basics - Anfänger-Themen 7
V return String[] führt zu [Ljava.lang.String;@50675690 Java Basics - Anfänger-Themen 7
K Return in Schleife Java Basics - Anfänger-Themen 4
B Statische Methode return funktioniert nicht. Java Basics - Anfänger-Themen 19
S Missing return Java Basics - Anfänger-Themen 4
das_leon return message Java Basics - Anfänger-Themen 2
C return kann nicht auf variable zugreifen Java Basics - Anfänger-Themen 26
N Ausführung gibt keinen Fehler an, Return wird aber nicht ausgegeben Java Basics - Anfänger-Themen 22
R return: cannot find symbol Java Basics - Anfänger-Themen 2
R Ratespiel mit Return und einer Eingabe Java Basics - Anfänger-Themen 1
Z Return in While-Schleife Java Basics - Anfänger-Themen 7
N Frage zu this, super und return Java Basics - Anfänger-Themen 13
K ArrayList ausgeben mit return Java Basics - Anfänger-Themen 6
M Return statement Java Basics - Anfänger-Themen 4
J-Gallus Ein Getter bekommt eine anderen Type als er Return soll Java Basics - Anfänger-Themen 9
J Variablen Komsiche System.in.read() return-value? Java Basics - Anfänger-Themen 3
M Abbrechen Methode ohne return Java Basics - Anfänger-Themen 3
M Methoden Datei einlesen und als return übergeben. Java Basics - Anfänger-Themen 8
L OOP Return Java Basics - Anfänger-Themen 10
L Erste Schritte Frage zu 'return' Java Basics - Anfänger-Themen 4
J Methoden Rekursive Return Methode Java Basics - Anfänger-Themen 2
W Return statement in Methode nur bei if-clause Java Basics - Anfänger-Themen 3
F Return-Anweisung Java Basics - Anfänger-Themen 2
E Erste Schritte <? super Unterklasse> Return-Typ darf nicht vom Wildcard-Typ sein Java Basics - Anfänger-Themen 5
B OOP Methode mit Array mit return verlassen Java Basics - Anfänger-Themen 8
J Grundsätzliche Frage zu return Types in Methoden Java Basics - Anfänger-Themen 6
B Methoden Probleme mit for Schleife und return Java Basics - Anfänger-Themen 5
Q Tastatureingabe direkt nach Eingabe (ohne zwischenzeitliches "Return" o.Ä ) weiterverwenden Java Basics - Anfänger-Themen 1
B Variablen Problem mit return String[] Java Basics - Anfänger-Themen 4
O Per return Run Methode beenden Java Basics - Anfänger-Themen 3
M Arrays als return Value? Java Basics - Anfänger-Themen 2
C Return statement Java Basics - Anfänger-Themen 10
T Boolean Missing return Statement?! Java Basics - Anfänger-Themen 2
Z Methoden return nullprüfung Java Basics - Anfänger-Themen 7
O Java return in Schleife Java Basics - Anfänger-Themen 4
K Was macht hier genau return? Java Basics - Anfänger-Themen 2
G Methoden Was bedeutet return in einer Methode Java Basics - Anfänger-Themen 5
Y Warum void statt Datentyp + return Java Basics - Anfänger-Themen 4
K Variablen RETURN in Case-Switch / This method must return a result of type Item Java Basics - Anfänger-Themen 4
K Erste Schritte "return" Problem bei Rekursion Java Basics - Anfänger-Themen 8
R If Verschachtelung und return; Java Basics - Anfänger-Themen 4
M Frage zum return; Befehl Java Basics - Anfänger-Themen 1
S try-catch - Variablen werden nicht an return übergeben Java Basics - Anfänger-Themen 3
S Methoden Return Java Basics - Anfänger-Themen 8
T Return eines Int-Werts? Java Basics - Anfänger-Themen 3
W return-Anweisung gibt nichts aus Java Basics - Anfänger-Themen 5
R Return in If Java Basics - Anfänger-Themen 10
S Methoden Return Anweisung beendet Methode nicht, stattdessen wird diese zweimal durchlaufen Java Basics - Anfänger-Themen 3
G array return methode Java Basics - Anfänger-Themen 10
L return wird nicht erkannt? Java Basics - Anfänger-Themen 3
J Regex mit Return Java Basics - Anfänger-Themen 3
M Variablen return-array klonen Java Basics - Anfänger-Themen 3
A Methode mit Array als Param --> return Array --> Fehler Java Basics - Anfänger-Themen 3
S Zeichen einlesen ohne Return? Java Basics - Anfänger-Themen 19
P Compiler-Fehler Boolean: Missing Return Statement Java Basics - Anfänger-Themen 4
S probleme mit der return anweisung Java Basics - Anfänger-Themen 20
E Warum wird Methode nicht durch return-Befehl beendet? Java Basics - Anfänger-Themen 3
V Erste Schritte Return ohne Argument Java Basics - Anfänger-Themen 6
I Methoden Missing return statement; Intervallschachtellung Java Basics - Anfänger-Themen 12
S Frage zu Vererbung und return. Java Basics - Anfänger-Themen 4
R return (mehrere floats) Java Basics - Anfänger-Themen 11
E Return String Java Basics - Anfänger-Themen 10
P Methoden Methode ohne return abbrechen? Java Basics - Anfänger-Themen 12
I Return Befehl in Methode Java Basics - Anfänger-Themen 13
M Problem mit boolean. Return nicht erkannt Java Basics - Anfänger-Themen 10
P Return aus For-Schleife Java Basics - Anfänger-Themen 19
S return in GUI ? Java Basics - Anfänger-Themen 12
M This method must return a result of type int Java Basics - Anfänger-Themen 13
F Erste Schritte return (char)toUnsignedInt(value) Java Basics - Anfänger-Themen 2
M missing return statement?! Java Basics - Anfänger-Themen 4
L Return Fragen Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben