2012-11-10 70 views
-1

原題:Java的泛型方法

寫下面的方法返回一個新的ArrayList。新列表 只包含原始列表中的元音元素,其中包含 英文字符(a,e,i,o,u)的數組。

這是我到目前爲止。我相信我創建了正確的泛型方法來打印出我的數組字符列表,我只是努力如何將元音放入另一個數組並打印出來。有什麼建議麼?我想我可能需要創建一個通用的「元音」ArrayList,使其運行?我在正確的軌道上?

感謝您的幫助!

這裏是我到目前爲止的代碼:

import java.util.*; 

public class test5 { 

    public static void main(String[] args) { 

    Character [] letters ={'a', 'r', 'y', 'i', 'i', 'o', 's', 'p', 'q', 'x', 'd', 'e', 'j'}; 
    Character [] vowels ={}; 

    test5.print(letters); 
    test5.print(vowels);  

    } 

public static <E> void print(E[] list) { 
for (int i=0; i < list.length; i++) 
    System.out.print(list[i] + ""); 
    System.out.println(); 

    } 

public <E> void vowels(E[] list){ 

for (int i=0; i < list.length; i++) 

    if (i=='a') 
     vowels.add(i); 

    else if (i=='e') 
     vowels.add(i); 

} 

public static <E> void vowelsArray(E[] list){ 

    for(int i = 0; i<vowels.size(); i++) 
     System.out.print(vowels.get(i)); 

} 

} 
+0

該代碼將無法編譯。你不能在數組上調用_add()_ ... – jahroy

回答

1

這聽起來像這樣分配的一點是要教你用一個列表(一個ArrayList是一個類型的List)。

到目前爲止,您根本沒有使用ArrayList:您正在使用數組。

有一個很大的區別。因爲與數組不同,它們可以動態增長。

您的老師希望您迭代輸入中的字母並將每個元音添加到列表中。

你應該考慮看看的JavaDoc的名單和ArrayList開始:

的方式你的代碼是正確的,現在,有沒有必要爲仿製藥。

你真的不需要通用的方法。

你想要一個方法返回一個鍵入的列表。

這裏有一個提示...這是你如何創建角色對象的列表:

List<Character> characterList = new ArrayList<Character>();