我正在尝试创建一种方法,可以在 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;
}
}
我得到的错误是“无法对非静态类型 T 进行静态引用”
Search<T> search = new Search<T>();
我是仿制药新手,非常感谢一些帮助!