Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Получение всех элементов перечисления




Получение всех элементов перечисления

Иногда необходимо получить список всех элементов enum-класса во время выполнения. Для этих целей в каждом enum-классе компилятор создает метод:
public static EnumClass[] values().  

 

Перечисление - это класс

Объявляя enum мы неявно создаем класс производный от java. lang. Enum. Условно конструкция enum Planet{... } эквивалентна class Planet extends java. lang. Enum {... }. И хотя явным образом наследоваться от java. lang. Enum нам не позволяет компилятор, все же в том, что enum наследуется, легко убедиться с помощью reflection.

 

 

 

 

https: //docs. oracle. com/javase/tutorial/java/javaOO/lambdaexpressions. html

package app22. pkg1; import java. io. *; public class App221 {   public static void main(String[] args) {    // TODO code application logic here    //распечатать список файлов в текущем каталоге    File dir = new File(". " );    //File []files= dir. listFiles();    //File []files= dir. listFiles(new MyFilter1()); //   File []files= dir. listFiles(new FileFilter() { //       public boolean accept(File file) { //          //это анонимный класс //           return file. isDirectory(); //       } //   });    File []files= dir. listFiles((f)-> f. isDirectory());    for(File f: files)        System. out. println(f); }    }

 

package app22. pkg1; import java. io. *; public class App221 {   public static void main(String[] args) {    // TODO code application logic here    //распечатать список файлов в текущем каталоге    File dir = new File(". " );    //File []files= dir. listFiles();    //File []files= dir. listFiles(new MyFilter1()); //   File []files= dir. listFiles(new FileFilter() { //       public boolean accept(File file) { //          //это анонимный класс //           return file. isDirectory(); //       } //   });    //File []files= dir. listFiles((f)-> f. isDirectory());                                                    App221 app = new App221();    File []files= dir. listFiles(app:: test4);    //File []files= dir. listFiles(App221:: testSt4);    for(File f: files)        System. out. println(f); }         boolean test4(File f){    return! f. isHidden(); } static boolean testSt4(File f){    return! f. isHidden(); }     }

 

 

package app22. pkg1; import java. io. *; import java. util. ArrayList; import java. util. Collection; import java. util. Collections; import java. util. function. *; //яхочу написать метод который получает любую коолекцию на входе, фильтрует ее, и что-то делает с набором public class App221 {   public static< T> void work(Collection< T> d, Predicate< T> filter, Consumer< T> cons){    for(T ti: d)    {        if(filter. test(ti)) cons. accept(ti);    } }         public static void main(String[] args) {    // TODO code application logic here    //распечатать список файлов в текущем каталоге    File dir = new File(". " );    //File []files= dir. listFiles();    //File []files= dir. listFiles(new MyFilter1()); //   File []files= dir. listFiles(new FileFilter() { //       public boolean accept(File file) { //          //это анонимный класс //           return file. isDirectory(); //       } //   });    //File []files= dir. listFiles((f)-> f. isDirectory());            App221 app = new App221();    File []files= dir. listFiles(app:: test4);    //File []files= dir. listFiles(App221:: testSt4);    for(File f: files)        System. out. println(f);            ArrayList< Integer> list = new ArrayList< > ();    Collections. addAll(list, 3, 7, 1, 3, 4, 23, 2, 9, 54, 7);    work(list, (x)-> x%2==0, (x)-> System. out. println(x)); //выводим четные числа }         boolean test4(File f){    return! f. isHidden(); } static boolean testSt4(File f){    return! f. isHidden(); }     }
run: . \build . \build. xml . \manifest. mf . \nbproject . \src СБОРКА УСПЕШНО ЗАВЕРШЕНА (общее время: 0 секунд)

http: //www. oracle. com/webfolder/technetwork/tutorials/obe/java/Lambda-QuickStart/index. html

 

 

package app22. pkg1; import java. io. *; import java. util. ArrayList; import java. util. Collection; import java. util. Collections; import java. util. function. *; //яхочу написать метод который получает любую коолекцию на входе, фильтрует ее, и что-то делает с набором public class App221 {   public static< T> void work(Collection< T> d, Predicate< T> filter, Consumer< T> cons){    for(T ti: d)    {        if(filter. test(ti)) cons. accept(ti);    } }         public static void main(String[] args) {    // TODO code application logic here    //распечатать список файлов в текущем каталоге    File dir = new File(". " );    //File []files= dir. listFiles();    //File []files= dir. listFiles(new MyFilter1()); //   File []files= dir. listFiles(new FileFilter() { //       public boolean accept(File file) { //          //это анонимный класс //           return file. isDirectory(); //       } //   });    //File []files= dir. listFiles((f)-> f. isDirectory());            App221 app = new App221();    File []files= dir. listFiles(app:: test4);    //File []files= dir. listFiles(App221:: testSt4);    for(File f: files)        System. out. println(f); //   ArrayList< Integer> list = new ArrayList< > ();   Collections. addAll(list, 3, 8, 12, 3, 4, 23, 2, 9, -55, 7);   // work(list, (x)-> x%2==0, (x)-> System. out. println(x));           //System. out. println(list. stream(). count());   System. out. println(list. stream().           mapToInt(x-> x). average()); }       boolean test4(File f){    return! f. isHidden(); } static boolean testSt4(File f){    return! f. isHidden(); }     }
OptionalDouble[1. 6] СБОРКА УСПЕШНО ЗАВЕРШЕНА (общее время: 0 секунд)

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...