diff --git a/008_java_oo/bibliotecas/bytebank/doc/allclasses-index.html b/008_java_oo/bibliotecas/bytebank/doc/allclasses-index.html index fd2f0ea..54cec4b 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/allclasses-index.html +++ b/008_java_oo/bibliotecas/bytebank/doc/allclasses-index.html @@ -1,11 +1,11 @@ - + All Classes and Interfaces - + @@ -56,7 +56,7 @@ loadScripts(document, 'script');
Class
Description
-
TestSortArrays
+
TestLambda
 
diff --git a/008_java_oo/bibliotecas/bytebank/doc/allpackages-index.html b/008_java_oo/bibliotecas/bytebank/doc/allpackages-index.html index 2c2e87a..ca2cb4f 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/allpackages-index.html +++ b/008_java_oo/bibliotecas/bytebank/doc/allpackages-index.html @@ -1,11 +1,11 @@ - + All Packages - + diff --git a/008_java_oo/bibliotecas/bytebank/doc/bytebank/module-summary.html b/008_java_oo/bibliotecas/bytebank/doc/bytebank/module-summary.html index 90e75ff..93aa757 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/bytebank/module-summary.html +++ b/008_java_oo/bibliotecas/bytebank/doc/bytebank/module-summary.html @@ -1,11 +1,11 @@ - + bytebank - + diff --git a/008_java_oo/bibliotecas/bytebank/doc/help-doc.html b/008_java_oo/bibliotecas/bytebank/doc/help-doc.html index 4119f3d..0cd64d7 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/help-doc.html +++ b/008_java_oo/bibliotecas/bytebank/doc/help-doc.html @@ -1,11 +1,11 @@ - + API Help - + diff --git a/008_java_oo/bibliotecas/bytebank/doc/index-files/index-1.html b/008_java_oo/bibliotecas/bytebank/doc/index-files/index-1.html index 0168289..d316b00 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/index-files/index-1.html +++ b/008_java_oo/bibliotecas/bytebank/doc/index-files/index-1.html @@ -1,11 +1,11 @@ - + B-Index - + diff --git a/008_java_oo/bibliotecas/bytebank/doc/index-files/index-2.html b/008_java_oo/bibliotecas/bytebank/doc/index-files/index-2.html index 16c8dd1..ab60220 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/index-files/index-2.html +++ b/008_java_oo/bibliotecas/bytebank/doc/index-files/index-2.html @@ -1,11 +1,11 @@ - + C-Index - + diff --git a/008_java_oo/bibliotecas/bytebank/doc/index-files/index-3.html b/008_java_oo/bibliotecas/bytebank/doc/index-files/index-3.html index 5eab7d2..1714ed6 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/index-files/index-3.html +++ b/008_java_oo/bibliotecas/bytebank/doc/index-files/index-3.html @@ -1,11 +1,11 @@ - + M-Index - + @@ -54,7 +54,7 @@ loadScripts(document, 'script'); B C M T 
All Classes and Interfaces|All Packages

M

-
main(String[]) - Static method in class com.bytebank.test.TestSortArrays
+
main(String[]) - Static method in class com.bytebank.test.TestLambda
 
B C M T 
All Classes and Interfaces|All Packages diff --git a/008_java_oo/bibliotecas/bytebank/doc/index-files/index-4.html b/008_java_oo/bibliotecas/bytebank/doc/index-files/index-4.html index 0058bbf..fe7fcf2 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/index-files/index-4.html +++ b/008_java_oo/bibliotecas/bytebank/doc/index-files/index-4.html @@ -1,11 +1,11 @@ - + T-Index - + @@ -54,9 +54,9 @@ loadScripts(document, 'script'); B C M T 
All Classes and Interfaces|All Packages

T

-
TestSortArrays - Class in com.bytebank.test
+
TestLambda - Class in com.bytebank.test
 
-
TestSortArrays() - Constructor for class com.bytebank.test.TestSortArrays
+
TestLambda() - Constructor for class com.bytebank.test.TestLambda
 
B C M T 
All Classes and Interfaces|All Packages diff --git a/008_java_oo/bibliotecas/bytebank/doc/index.html b/008_java_oo/bibliotecas/bytebank/doc/index.html index 7a76bd6..d3d3ef4 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/index.html +++ b/008_java_oo/bibliotecas/bytebank/doc/index.html @@ -1,11 +1,11 @@ - + Generated Documentation (Untitled) - + diff --git a/008_java_oo/bibliotecas/bytebank/doc/member-search-index.js b/008_java_oo/bibliotecas/bytebank/doc/member-search-index.js index e6804fe..8d619b9 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/member-search-index.js +++ b/008_java_oo/bibliotecas/bytebank/doc/member-search-index.js @@ -1 +1 @@ -memberSearchIndex = [{"p":"com.bytebank.test","c":"TestSortArrays","l":"main(String[])","u":"main(java.lang.String[])"},{"p":"com.bytebank.test","c":"TestSortArrays","l":"TestSortArrays()","u":"%3Cinit%3E()"}];updateSearchResults(); \ No newline at end of file +memberSearchIndex = [{"p":"com.bytebank.test","c":"TestLambda","l":"main(String[])","u":"main(java.lang.String[])"},{"p":"com.bytebank.test","c":"TestLambda","l":"TestLambda()","u":"%3Cinit%3E()"}];updateSearchResults(); \ No newline at end of file diff --git a/008_java_oo/bibliotecas/bytebank/doc/overview-tree.html b/008_java_oo/bibliotecas/bytebank/doc/overview-tree.html index 2c3fc56..4f1670d 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/overview-tree.html +++ b/008_java_oo/bibliotecas/bytebank/doc/overview-tree.html @@ -1,11 +1,11 @@ - + Class Hierarchy - + @@ -60,7 +60,7 @@ loadScripts(document, 'script'); diff --git a/008_java_oo/bibliotecas/bytebank/doc/type-search-index.js b/008_java_oo/bibliotecas/bytebank/doc/type-search-index.js index 837b563..13935fc 100644 --- a/008_java_oo/bibliotecas/bytebank/doc/type-search-index.js +++ b/008_java_oo/bibliotecas/bytebank/doc/type-search-index.js @@ -1 +1 @@ -typeSearchIndex = [{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"com.bytebank.test","l":"TestSortArrays"}];updateSearchResults(); \ No newline at end of file +typeSearchIndex = [{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"com.bytebank.test","l":"TestLambda"}];updateSearchResults(); \ No newline at end of file diff --git a/008_java_oo/herencia_interfaces.md b/008_java_oo/herencia_interfaces.md index c4aa1a3..20a2bef 100644 --- a/008_java_oo/herencia_interfaces.md +++ b/008_java_oo/herencia_interfaces.md @@ -256,7 +256,7 @@ public interface Autenticable { ``` Utilización de clase **utilitaria** -[Autenticable](./eclipse/bytebank_heredado/src/bytebank_heredado/AutenticacionUtil.java) +[AutenticacionUtil](./eclipse/bytebank_heredado/src/bytebank_heredado/AutenticacionUtil.java) ```java public class AutenticacionUtil { diff --git a/008_java_oo/java_util.md b/008_java_oo/java_util.md index 38b544a..36e76b2 100644 --- a/008_java_oo/java_util.md +++ b/008_java_oo/java_util.md @@ -866,6 +866,64 @@ Sumario con colecciones, principalmente listas -## Clase anonima y lambda +## Clase anónima y lambda +### Clase anónima +Implementación de clase anónima al ordenar lista, +[TestOrdenLista.java](./bibliotecas/bytebank/src/com/bytebank/test/TestOrdenLista.java) + +```java + lista.sort(new Comparator() { + @Override + public int compare(Cuenta o1, Cuenta o2) { + return (Integer.compare(o1.getNumero(), o2.getNumero())); + } + }); +``` + +```java + Collections.sort(lista, new Comparator() { + @Override + public int compare(Cuenta o1, Cuenta o2) { + return o1.getTitular().getNombre().compareTo(o2.getTitular().getNombre()); + } + }); +``` + +Estas clases son creadas por Java, se pueden ver los archivos compilados como +`TestOrdenLista$1.class` y `TestOrdenLista$2.class` + +### Lambda + +Las funciones lambdas provienen de la programación funcional y corresponden +con funciones de Java que normalmente son anónimas y "se escriben en una línea" +donde se usan. Como cualquier función puede recibir argumentos y devuelven +uno o ningún valor de retorno. + +```java +public class TestLambda { + ... + // Lambda + lista.sort((Cuenta o1, Cuenta o2) -> + Integer.compare(o1.getNumero(), o2.getNumero()) + ); + + System.out.println("Despues de ordenar por nro. de cta."); + for (Cuenta cuenta : lista) { + System.out.println(cuenta); + } + + Collections.sort(lista, (c1, c2) -> + c1.getTitular().getNombre().compareTo(c2.getTitular().getNombre()) + ); + + System.out.println("Despues de ordenar por nombre:"); + + lista.forEach(cuenta -> System.out.println(cuenta)); + } + } +} +``` + +- [Lectura - interface funcional](https://www.arquitecturajava.com/java-8-functional-interfaces-y-sus-tipos/)