[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Aufg 1



> Hallo,
> wir sitzen gerade an Aufg1. Wenn man die Methode bnarySearch aus der Klasse
> Arrays verwendet und ihr als Parameter das element Array und das zu suchende
> Objekt uebergibt erhaelt man eine NullPointerException. Hat irgendjemand
> eine Ahnung woran das liegen koennte?
>

Das ganze kann verschiedene Gruende haben. Hier ein Teil des Codes der Methode:

public static int binarySearch(Object[] a, Object key) {
int low = 0;

int high = a.length-1;

while (low <= high) {
int mid =(low + high)/2;
Object midVal = a[mid];
int cmp = ((Comparable)midVal).compareTo(key);
...
}
...
}


Am Anfang wird mit
a.length-1 die rechte Grenze fuer die binaere Suche bestimmt. Ist Euer Vektor nicht komplett gefuellt, kann a[mid] ein Nullverweis liefern. Dieser erzeugt dann eine Zeile tiefer die NullPointerException.

Ist es bei Euch erlaubt
null in den Container zu tun? Falls ja, kann a[mid] oder key null sein...

Bernd