Java中EnumSet的of()方法: Java.util.EnumSet.of()

作者: Arvin Chen 分类: Java 来源: Break易站(www.breakyizhan.com)

Java中的java.util.EnumSet.of(E ele1,E ele2,E ele3,...)方法用于创建最初包含参数中指定元素的枚举集。当同时添加多个项目时,在添加新元素时将元素向下推到集合中。当在不同时间或迭代添加不同元素时,旧元素将被替换。

句法:

Enum_Set = EnumSet.of(E ele1,E ele2,E ele3,...

参数:该方法可以采用枚举中存在的多个参数。

返回值:该方法返回最初包含通过参数传递的指定元素的枚举集。

异常:如果传递的任何元素为NULL,则该方法抛出NullPointerException。

下面的程序说明了java.util.EnumSet.of()方法的工作原理

程序1:一次添加一个元素取代了前一个元素。

// Java program to demonstrate range() method
import java.util.*;
 
// Creating an enum of GFG type
enum GFG {
    Welcome,
    To,
    The,
    World,
    of,
    Geeks
}
;
 
public class Enum_Set_Demo {
 
    public static void main(String[] args)
    {
 
        // Creating an EnumSet
        EnumSet<GFG> e_set;
 
        // Adding elements
        e_set = EnumSet.of(GFG.The);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set); 
 
        // Adding elements
        e_set = EnumSet.of(GFG.Geeks);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set); 
 
        // Adding elements
        e_set = EnumSet.of(GFG.Welcome);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set); 
    }
}

输出:

The enum set is: [The]
The enum set is: [Geeks]
The enum set is: [Welcome]

程序2:同时添加两个元素。

// Java program to demonstrate range() method
import java.util.*;
 
// Creating an enum of GFG type
enum GFG {
    Welcome,
    To,
    The,
    World,
    of,
    Geeks
}
;
 
public class Enum_Set_Demo {
 
    public static void main(String[] args)
    {
 
        // Creating an EnumSet
        EnumSet<GFG> e_set;
 
        // Adding elements
        e_set = EnumSet.of(GFG.The, GFG.Geeks);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set); 
 
        // Adding elements
        e_set = EnumSet.of(GFG.Geeks, GFG.Welcome);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set); 
 
        // Adding elements
        e_set = EnumSet.of(GFG.of, GFG.World);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set); 
    }
}

输出:

The enum set is: [The, Geeks]
The enum set is: [Welcome, Geeks]
The enum set is: [World, of]

程序3:同时添加多个元素。

// Java program to demonstrate range() method
import java.util.*;
 
// Creating an enum of GFG type
enum GFG {
    Welcome,
    To,
    The,
    World,
    of,
    Geeks
}
;
 
public class Enum_Set_Demo {
 
    public static void main(String[] args)
    {
 
        // Creating an EnumSet
        EnumSet<GFG> e_set;
 
        // Adding 2 elements
        e_set = EnumSet.of(GFG.The, GFG.Geeks);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set);
 
        // Adding 3 elements
        e_set = EnumSet.of(GFG.The, GFG.Geeks, GFG.Welcome);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set);
 
        // Adding 4 elements
        e_set = EnumSet.of(GFG.Geeks, GFG.Welcome,
                           GFG.of, GFG.World);
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set);
 
        // Adding 5 elements
        e_set = EnumSet.of(GFG.Welcome, GFG.To, GFG.The,
                           GFG.of, GFG.World, GFG.Geeks); 
 
        // Displaying the updated set
        System.out.println("The enum set is: " + e_set);
    }
}

输出:

The enum set is: [The, Geeks]
The enum set is: [Welcome, The, Geeks]
The enum set is: [Welcome, World, of, Geeks]
The enum set is: [Welcome, To, The, World, of, Geeks]

所述java.util.EnumSet.of(E_first,E_rest用于创建初始包含所有指定元素的枚举集。该工厂的参数列表使用var_args特性,也可用于创建最初包含任意数量元素的枚举集,但它的缺点是使程序比不使用var_args的重载运行得慢。

句法:

public static <E extends Enum <E >> EnumSet <E> of(E_first,E_rest)

参数:该方法有两个参数:

  • E_first:这是枚举类型,并且是指该集合最初要包含的元素。
  • E_rest:这也是枚举类型,并且指的是集合最初需要包含的其余元素。

返回值:该方法返回最初包含通过参数传递的指定元素的枚举集。

异常:如果传递的任何元素为NULL,则该方法抛出NullPointerException。

下面的程序说明了java.util.EnumSet.of(E_first,E_rest)方法的工作原理:

// Java program to demonstrate of() method
import java.util.*;
 
// Creating an enum of GFG type
enum GFG {
    Welcome,
    To,
    The,
    World,
    of,
    Geeks
}
;
public class Enum_Set_Demo {
 
   public static void main(String[] args) {
 
      // Creating the ist that will be used as args
      GFG[] listing = {GFG.Welcome, GFG.The, 
                       GFG.World, GFG.Geeks}; 
 
      // Calling the other main function
      other_main(listing);
   }
 
   // The other_main.
   public static void other_main(GFG[] other_args) {
 
      // Creating the set
      EnumSet<GFG> e_set;
 
      // Adding the first element and the other_args
      e_set = EnumSet.of(GFG.Welcome, other_args);
 
      // Displaying the e_set
      System.out.println("Set: " + e_set);
   }
}

输出:

Set: [Welcome, The, World, Geeks]
  •   本文标题:Java中EnumSet的of()方法: Java.util.EnumSet.of() - Break易站
    转载请保留页面地址:https://www.breakyizhan.com/java/5488.html

    发表笔记

    电子邮件地址不会被公开。 必填项已用*标注

    更多阅读