import java.util.ArrayList;
import java.util.Scanner;
import java.util.Random;
public class SearchList<T extends Comparable<T>> extends ArrayList<T> {
public int positionOf(T target) {
for (int i=0; i<this.size(); i++) {
if (this.get(i).compareTo(target)==0) {
return i;
}
}
return -1;
}
public static void main(String[] args) {
SearchList<String> staff = new SearchList<String>();
staff.add("Tom");
staff.add("Dick");
staff.add("Juliet");
staff.add("Romeo");
staff.add("Harry");
String[] queries = {"Harry", "Tom", "Moe", "Curly"};
for (String name : queries) {
int pos = staff.positionOf(name);
if (pos <0 )
System.out.println(name + " not found");
else
System.out.println(name+" found @ "+pos);
}
Random random = new Random();
SearchList<IntPair> pairs = new SearchList<IntPair>();
for (int i=0; i<9; i++) {
pairs.add(new IntPair(random.nextInt(3), random.nextInt(3)));
}
for (int i=0; i<pairs.size(); i++) {
IntPair intQuery = new IntPair(random.nextInt(3), random.nextInt(3));
int pos = pairs.positionOf(intQuery);
if (pos < 0)
System.out.println(intQuery + " not found");
else
System.out.println(intQuery+" found @ "+pos);
}
}
}