EnumSet ist eine praktische Klasse in Java, die zum Implementieren von Sammlungsoperationen von Aufzählungstypen verwendet wird. Mit EnumSet können Bitoperationen, Setzoperationen und andere verschiedene Operationen für alle Werte eines Aufzählungstyps ausgeführt werden. Im eigentlichen Entwicklungsprozess kann die Verwendung von EnumSet problemlos mehrere Aufzählungswerte bearbeiten und so die Lesbarkeit und Wartbarkeit des Codes verbessern. In diesem Artikel wird erläutert, wie Sie die EnumSet-Funktion in Java zum Durchführen von Aufzählungsvorgängen verwenden.
1. Was ist EnumSet? EnumSet ist eine abstrakte Klasse in Java. Sie implementiert die Set-Schnittstelle und kann nur für Werte vom Typ Aufzählung verwendet werden. Die EnumSet-Klasse stellt einige statische Factory-Methoden bereit, mit denen EnumSet-Instanzobjekte auf unterschiedliche Weise generiert werden können, z. B.:
EnumSet<Weekdays> allDays = EnumSet.allOf(Weekdays.class); EnumSet<Weekdays> weekday = EnumSet.range(Weekdays.MONDAY, Weekdays.FRIDAY); EnumSet<Weekdays> weekend = EnumSet.complementOf(weekday);
Weekdays ist ein Aufzählungstyp, der die Aufzählungswerte von sieben Tagen in der Woche enthält und über allOf generiert werden kann ()-Methode Ein EnumSet-Instanzobjekt, das alle Aufzählungswerte enthält; die Methode „range()“ kann verwendet werden, um ein EnumSet-Instanzobjekt zu generieren, das einen Aufzählungswert innerhalb eines bestimmten Bereichs enthält; die Methode „complementOf()“ kann verwendet werden, um ein EnumSet zu generieren, das alle Aufzählungswerte enthält Werte außer dem angegebenen Enumerationswert-Instanzobjekt.
2. Verwenden Sie EnumSet für Aufzählungsoperationen
Grundlegende OperationenEnumSet<Weekdays> days = EnumSet.of(Weekdays.MONDAY); days.add(Weekdays.TUESDAY); days.remove(Weekdays.MONDAY); if (days.contains(Weekdays.WEDNESDAY)) { System.out.println("Today is Wednesday!"); } System.out.println(days.size());
EnumSet<Weekdays> weekday1 = EnumSet.range(Weekdays.MONDAY, Weekdays.WEDNESDAY); EnumSet<Weekdays> weekday2 = EnumSet.range(Weekdays.TUESDAY, Weekdays.FRIDAY); EnumSet<Weekdays> weekend = EnumSet.of(Weekdays.SATURDAY, Weekdays.SUNDAY); EnumSet<Weekdays> weekdays = EnumSet.of(Weekdays.MONDAY, Weekdays.WEDNESDAY); // 求并集 EnumSet<Weekdays> union = EnumSet.copyOf(weekdays); union.addAll(weekday2); // 求交集 EnumSet<Weekdays> intersection = EnumSet.copyOf(weekdays); intersection.retainAll(weekday2); // 求补集 EnumSet<Weekdays> complement = EnumSet.complementOf(weekday1); // 判断集合包含关系 if (weekdays.containsAll(weekday1)) { System.out.println("Weekdays contains Monday to Wednesday!"); } if (!weekdays.containsAll(weekend)) { System.out.println("Weekdays do not contain weekend!"); }
Der obige Code zeigt, wie EnumSet für Mengenoperationen verwendet wird. Unter anderem kann die Methode copyOf() ein EnumSet-Instanzobjekt generieren, das den angegebenen Aufzählungswert enthält. Die Methode addAll() kann den angegebenen Aufzählungswert zum EnumSet-Instanzobjekt hinzufügen EnumSet-Instanzobjekt. Die Methode „complementOf()“ kann ein EnumSet-Instanzobjekt generieren, das alle Aufzählungswerte außer dem angegebenen Aufzählungswert enthält.
3. Fazit
In diesem Artikel wird erläutert, wie Sie die EnumSet-Funktion in Java zum Ausführen von Aufzählungsvorgängen verwenden, einschließlich der grundlegenden Vorgänge und Sammlungsvorgänge von EnumSet. Durch die Verwendung von EnumSet können Sie die Bedienung von Aufzählungstypen vereinfachen und die Lesbarkeit und Wartbarkeit des Codes verbessern. In Situationen, in denen mehrere Aufzählungswerte bearbeitet werden müssen, macht die Flexibilität von EnumSet den Code prägnanter und einfacher zu warten.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie die EnumSet-Funktion in Java für Aufzählungsoperationen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!