private int findIndex ( Object key , Object [ ] array ) { int length = array . length ; int index = getModuloHash ( key , length ) ; int last = ( index + length - 1 ) % length ; while ( index != last ) { if ( array [ index ] == key || array [ index ] == null ) { /* * Found the key, or the next empty spot (which means key is not * in the table) */ break ; } index = ( index + 1 ) % length ; } return index ; }
Returns the index where the key is found at or the index of the next empty spot if the key is not found in this table .