【问题标题】:Create Enumeration of objects创建对象枚举
【发布时间】:2015-08-07 18:54:22
【问题描述】:

我需要创建一个 java.util.Enumeration 的 Fruit 对象,以便在测试期间将其传递给此方法。这是遗留代码,我无法更改方法签名。

public void get(Enumeration<Fruit> fruits){}

我的水果课:

public class Fruit{
    String name;
    //getters and setters   
}

如何创建 Fruit 对象的枚举?

【问题讨论】:

    标签: java enumeration legacy


    【解决方案1】:

    您可以使用Collections.enumeration(Collection&lt;T&gt;) 方法将集合(例如List&lt;Fruit&gt;)转换为Enumeration&lt;Fruit&gt;:

    List<Fruit> fruits = new ArrayList<>();
    fruits.add(new Fruit());
    Enumeration<Fruit> fruitEnumeration = Collections.enumeration(fruits);
    

    【讨论】:

      【解决方案2】:

      您可以使用Collections.enumeration() 将Collection&lt;T&gt;(包括List&lt;T&gt;)转换为Enumeration&lt;T&gt;。一个例子(公然从here窃取):

      package com.tutorialspoint;
      
      import java.util.*;
      
      public class CollectionsDemo {
         public static void main(String args[]) {
             // create an ArrayList
             List arrayList = new ArrayList();
      
             // populate the list
             arrayList.add("A");
             arrayList.add("B");
             arrayList.add("C");  
      
             // create an Enumeration
             Enumeration e = Collections.enumeration(arrayList);
      
             System.out.println("Printing the enumeration:");
      
             while (e.hasMoreElements()) {
                  System.out.println("Value is: " + e.nextElement());
             }
         }    
      }
      

      【讨论】:

        猜你喜欢
        • 2013-09-02
        • 1970-01-01
        • 1970-01-01
        • 2021-04-11
        • 1970-01-01
        • 1970-01-01
        • 2019-10-01
        • 2021-09-08
        • 2013-10-13
        相关资源
        最近更新 更多