Java中的泛型-创建泛型方法
我想尝试创建一个通用方法,该方法采用数组、数组长度和返回数组中元素位置的元素。我是Java新手,我正在尝试学习泛型 我似乎无法得到元素的位置,我甚至不知道我是否做得对,任何建议都会很好Java中的泛型-创建泛型方法,java,arrays,generics,Java,Arrays,Generics,我想尝试创建一个通用方法,该方法采用数组、数组长度和返回数组中元素位置的元素。我是Java新手,我正在尝试学习泛型 我似乎无法得到元素的位置,我甚至不知道我是否做得对,任何建议都会很好 public class GenericsProj { public static void main(String[] args) { Integer[] intArray = {1, 2, 3, 4}; String[] stringArray = {"on
public class GenericsProj {
public static void main(String[] args) {
Integer[] intArray = {1, 2, 3, 4};
String[] stringArray = {"one", "two", "three", "four"};
routineArray(intArray, intArray.length, 4);
routineArray(stringArray, stringArray.length, "four");
}
public static <T> void routineArray(T[] array, T length, T element) {
System.out.println("Inside the array: " + Arrays.toString(array));
for (int i = 0; i < array.length; i++) {
if (array[i] == element) {
pos = array[i];
System.out.println(pos);
}
}
}
}
公共类GenericsProj{
公共静态void main(字符串[]args){
整数[]intArray={1,2,3,4};
String[]stringArray={“一”、“二”、“三”、“四”};
routineArray(intArray,intArray.length,4);
routineArray(stringArray,stringArray.length,“四”);
}
公共静态void routineArray(T[]数组,T长度,T元素){
System.out.println(“数组内部:+Arrays.toString(数组));
for(int i=0;i
NowroutineArray
如果元素在数组列表中,则从您的输入中为每次出现的元素打印元素,如果您想返回需要执行的元素位置,请执行pos=i
而不是pos=array[i]
。在这种情况下,您可以将方法的返回类型从T更改为int。如果您想打印出数组的位置,您必须将数组[i]更改为i,数组[i]意味着您将获得包含i索引的arraylist的值。另外,您必须提到pos变量的类型。代码如下所示
if (array[i] == element) {
int pos = i;
System.out.println(pos);
}
您不应将
长度设置为T
类型,长度始终为int
,位置也是如此,始终为int
。除此之外,您不需要长度参数或pos
(并且您没有声明pos
)。如果需要元素的索引,请打印i
,而不是array[i]
。另外,在比较字符串和其他对象时,请使用.equals
而不是=
。天哪,你们都是救生员,谢谢!!现在我将尝试创建一个大于的方法来比较两个对象,啊。