繁体   English   中英

Java 中的泛型 - 创建泛型方法

[英]Generics in Java - Creating a Generic Method

我想尝试创建一个通用方法,它接受一个数组、数组的长度和一个返回数组中元素位置的元素。 我是 Java 新手,我正在尝试学习泛型。

我似乎无法获得元素的位置,我什至不知道我这样做是否正确,任何建议都会很棒。

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);
            }
        }
    }
}

现在,如果元素在数组列表中,则routineArray为每次出现打印输入中的元素,如果要返回元素的位置,则需要执行pos = i而不是pos = array[i] 在这种情况下,您可以将方法的返回类型从 T 更改为 int。

如果要打印出数组的位置,则必须将 array[i] 更改为 i,array[i] 表示您获得包含 i 索引的 arraylist 的值。 你必须提到 pos 变量的类型。 代码将在下面显示。

if (array[i] == element) {
            int pos = i;
            System.out.println(pos);
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM