Ich versuche im Moment 2 Methoden miteinander zu vergleichen.
Die Methoden sind wie folgt aufgebaut
Methode 1
public static int[] Methodennahme1(int[] Array)
Methode 2
public static int[] Methodenname2(int Array[], int Wert1, int Wert2)
Methode 2 ruft innerhalb ihrer Methode nochmal eine Methode auf.
Ich versuche mit Hilfe der Klasse Stopwatch die Laufzeit zu messen.
Für Methode 1 bekomme ich einen Wert zurück geliefert. Methode 2 liefert mir immer 0 zurück.
Dann erfolgt jeweils die Ausgabe. Warum liefert mir Methode2 immer 0 zurück?
Die Methoden sind wie folgt aufgebaut
Methode 1
public static int[] Methodennahme1(int[] Array)
Methode 2
public static int[] Methodenname2(int Array[], int Wert1, int Wert2)
Methode 2 ruft innerhalb ihrer Methode nochmal eine Methode auf.
Ich versuche mit Hilfe der Klasse Stopwatch die Laufzeit zu messen.
Java:
public class StopWatch {
private long startTime = 0;
private long stopTime = 0;
private boolean running = false;
public void start() {
this.startTime = System.currentTimeMillis();
this.running = true;
}
public void stop() {
this.stopTime = System.currentTimeMillis();
this.running = false;
}
//elaspsed time in milliseconds
public long getElapsedTime() {
long elapsed;
if (running) {
elapsed = (System.currentTimeMillis() - startTime);
}
else {
elapsed = (stopTime - startTime);
}
return elapsed;
}
//elaspsed time in seconds
public long getElapsedTimeSecs() {
long elapsed;
if (running) {
elapsed = ((System.currentTimeMillis() - startTime) / 1000);
}
else {
elapsed = ((stopTime - startTime) / 1000);
}
return elapsed;
}
}
Für Methode 1 bekomme ich einen Wert zurück geliefert. Methode 2 liefert mir immer 0 zurück.
Java:
StopWatch messung1 = new StopWatch();
messung1.start();
Methodennahme1(Array);
messung1.stop();
Java:
StopWatch messung2 = new StopWatch();
messung2.start();
Methodennahme2(Array, wert 1, wert2);
messung2.stop();
Dann erfolgt jeweils die Ausgabe. Warum liefert mir Methode2 immer 0 zurück?