我试图制作一种方法,可以在ArrayList中搜索特定的整数或字符串。 我已经设法让它搜索ArrayList中的整数,但是当我试图搜索字符串时,我无法使其正常工作。 这里是我的代码:通用线性搜索 - 无法在ArrayList中使用字符串搜索
import java.util.*;
public class Search <T> {
public static void main(String[] argv) {
Search<T> search = new Search<T>();
ArrayList<Integer> alist = new ArrayList<Integer>();
alist.add(1);
alist.add(3);
alist.add(5);
alist.add(7);
int num = 5;
ArrayList<String> alist2 = new ArrayList<String>();
alist2.add("A");
alist2.add("B");
alist2.add("C");
alist2.add("D");
String word = "C";
System.out.println(search.linearSearch(alist, num));
System.out.println(search.linearSearch(alist2, word));
}
public int linearSearch(ArrayList<T> rrr, T wordnum) {
for (int i=0; i < rrr.size(); i++) {
if (wordnum.equals(rrr.get(i))) {
return i;
};
};
return -1;
}
}
我得到的错误是在
Search<T> search = new Search<T>();
我“不能让一个静态引用非静态型T”新的泛型,我真的很感激一些帮助!