簡體   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