【问题标题】:Java Generic Methods [closed]Java 泛型方法 [关闭]
【发布时间】:2012-11-10 01:58:40
【问题描述】:

原问题:

编写以下返回新 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));

}

}

【问题讨论】:

  • 该代码将无法编译。您不能在数组上调用 add()...

标签: java generics arraylist generic-method


【解决方案1】:

听起来这个作业的重点是教你使用 List(ArrayList 是 List 的一种)。

到目前为止,您根本没有使用 ArrayList:您使用的是数组。

有很大的不同。

列表很有用,因为与数组不同,它们可以动态增长。

您的老师希望您遍历输入中的字母并将每个元音添加到列表中。

您应该首先查看用于 List 和 ArrayList 的 JavaDoc:

您的代码现在的方式,不需要泛型。

您也确实不需要通用方法。

你想要一个返回类型列表的方法。

这里有一个提示...这是您创建角色对象列表的方式:

List&lt;Character&gt; characterList = new ArrayList&lt;Character&gt;();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-02
    • 1970-01-01
    • 1970-01-01
    • 2020-11-01
    • 1970-01-01
    相关资源
    最近更新 更多