【问题标题】:Generics - How can i put this code into Generics泛型 - 我如何将此代码放入泛型
【发布时间】:2014-05-04 13:14:09
【问题描述】:

我怎样才能把这段代码变成通用形式?

List aviary = new ArrayList();
Eagle any Eagle;
aviary.add(new Eagle(100, "Brutus"));
aviary.add(new Eagle(100, "Chronos"));
for (int i=0; i<aviary.size(); i++) {
anyEagle = (Eagle) aviary.get(i);
anyEagle.hunt();
}

【问题讨论】:

  • 你试过List&lt;Eagle&gt; 吗?一些 IDE 将帮助您使用泛型,甚至格式化您的代码。 ;)
  • 只填?
  • BTW Javascript 与 Java 无关,所以我将其从标签中删除。

标签: java generics generic-programming


【解决方案1】:

您可以在 Java 7 中像这样使用泛型和 for-each 循环

List<Eagle> aviary = new ArrayList<>();
aviary.add(new Eagle(100, "Brutus"));
aviary.add(new Eagle(100, "Chronos"));

for (Eagle eagle: aviary)
    eagle.hunt();

【讨论】:

    【解决方案2】:

    第一行需要改成

    List<Eagle> aviary = new ArrayList<>();
    

    我假设 Eagle 是您拥有的有效对象。 如果您更改上面的行,您可以摆脱此行中的类型转换

    anyEagle = (Eagle) aviary.get(i);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-01
      • 1970-01-01
      • 2022-10-15
      • 1970-01-01
      • 2020-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多