Problem mit Vector()

bierspritzn

Grünschnabel
Ich habe bei zwei Fällen folgende Warnung:
Note: C:\...\KriterienBaum.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

1.Fall:
Diese Warnung muss wohl aufgrund folgender Zeilen kommen. Sie hat irgendwas mit Vector zu tun, glaube ich!
Code:
//Multipliziere
for(int i=0; i<matrixlaenge; i++){
	for(int j=0; j<matrixlaenge; j++){
		for(int k=0; k<matrixlaenge; k++){
			Vector <Double> zeilenvec = new Vector <Double>();
			zeilenvec = (Vector) vector.elementAt(i);
			double x = zeilenvec.elementAt(k);
			Vector <Double> spaltenvec = new Vector <Double>();
			spaltenvec = (Vector) vector.elementAt(k);
			double y = spaltenvec.elementAt(j);
			ergebnisMatrix[i][j] += x * y;
		}
	}
}

2.Fall:
Diesselbe Warnung kommt auch bei diesem Codeausschnitt
Code:
MatrixMulti.multipliziere(matrix_tablemodel.getDataVector(), matrix_tablemodel);

Ich denke diese Meldung hat ihren Ursprung in der Verwendung von "matrix_tablemodel.getDataVector()", allerdings weiß ich nicht wie der Code aussehen soll, dass diesen Warnung vermieden werden kann.
 
Ist zwar schon ein paar Tage alt, aber vielleicht suchst Du ja noch..
Erstmal Dein Code, ordentlich in Code Tags, damit das lesbaar wird:
PHP:
//Multipliziere
for(int i=0; i<matrixlaenge; i++) {
    for(int j=0; j<matrixlaenge; j++) {
        for(int k=0; k<matrixlaenge; k++) {
            Vector <Double> zeilenvec = new Vector <Double>();
            zeilenvec = (Vector) vector.elementAt(i);
            double x = zeilenvec.elementAt(k);
            Vector <Double> spaltenvec = new Vector <Double>();
            spaltenvec = (Vector) vector.elementAt(k);
            double y = spaltenvec.elementAt(j);
            ergebnisMatrix[i][j] += x * y;
        }
    }
}

Was mir auffällt, sind die unnützen new Vector() Aufrufe. Du erzeugst einen neuen Vector, nur um die danach sofort wieder der Gabage Collection zu überlassen. Du kannst das auch gleich so zusammenfassen:
PHP:
Vector <Double> zeilenvec = vector.elementAt(i);
Ich hab hier auch gleich mal den Cast weggelasen, der könnte das Problem sein. Könnte, da ich nicht weiß, wie Du die Variable 'verctor' definiert hast..

Gruß, Torax
 

Neue Beiträge

Zurück