Иногда необходимо получить список всех элементов 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 секунд)