【发布时间】:2015-07-07 21:33:51
【问题描述】:
使用泛型,编译器应该在运行时推断对象 T 的类型,但是它给了我一个静态违规,如标题中所述,我无法弄清楚(使用其他问题)来解决这个问题。
这是我的方法:
public static <T> boolean linearSearchIterative(T[] array, T obj) {
for(int i = 0; i < array.length; i++) {
if(array[i].equals(obj)) {
return true;
}
}
return false;
}
这是我在 main 方法中声明它的方式:
int x[] = {2, 3, 5, 6, 1};
int y = 1;
System.out.println(LinearSearch.linearSearchIterative(x, y));
【问题讨论】:
-
使用整数而不是整数
-
基元不是对象。你可能需要一个 Integer[] 和 Integer