array[ j ] = target
target
into slot j of the arrayarray[ j ] == target
array[ j ].equals( target )
Unless you enjoy late nights debugging programs that have no hope of ever running, look over those three answers. Two of them (the wrong ones) are very common bugs. They will happen to you. Learn to recognize them.
The program below has more of the search method.
Inspect the second if
statement.
It is written so that if the target has just been found the
method immediately returns to the caller
with the index of the slot in which target
was found.
class Searcher { // seek target in the array of strings. // return the index where found, or -1 if not found. public static int search( String[] array, String target ) { for ( int j=0; j < array.length; j++ ) if ( array[j] != null ) if ( array[j].equals( target ) ) return ________ ; return ________ ; // Outside of the Loop! } } class SearchTester { public static void main ( String[] args ) { . . . . . . int where = Searcher.search( strArray, "Peoria" ); . . . . . . } }
The second return-statement is NOT part of the loop body. It is executed only when every slot of the array has been inspected and the target has not been found.