Bien, continuemos con los Trichet.
Bueno, son set ordenados, pero de forma natural, es decir, alfabética si son cadenas o estric o
si son numerico.
Bueno, del 1 a tal n de forma ascendente depende la regla de ordenamiento que leemos.
Pero bien, veamos el ejemplo.
Vamos a crear una nueva clase aka new yeva class ejemplo Trichet
bien con el método main
bueno del tipo de interfaz como siempre del tipo string trichet t s igual new utilizando.
Bien, hay que recordar de la clase introducción que los Trichet tienen un costo de rendimiento.
Por qué son ordenados entonces cada vez que manipulamos objeto?
Por ejemplo, para agregar o para eliminar, tiene su costo ya.
Por qué tienen que ir ordenando las posiciones?
Entonces es una ventaja versus los aceto.
Los Jacek son muy estable, con un rendimiento bastante constante al momento de manipular elementos
tanto para eliminar son muy rápidos y también para agregar elementos.
A diferencia de estos de utilizar.
Pero bueno, tiene su ventaja de que son ordenados.
Vamos a agregar entonces con ese punto AD por ejemplo.
Bueno, el mismo ejemplo que teníamos uno, dos y así hasta 5 de ese punto AD 2.
Voy a repetir el 3 a propósito
y vamos a imprimir.
Entonces Soubi el TC.
Bien, vamos a levantar.
Fíjense en el orden que lo tenemos registrado.
Uno, dos, tres, cuatro, cinco se fijan.
Pero ese orden da lo mismo.
Porque no interesa ese orden.
El orden realmente importante es natural, por lo tanto va a ordenar de forma alfabética o de la tabla.
Y únicos en realidad.
Bien.
Levantamos.
Se fijan, no mantiene el orden en el cual se registran.
Pero si el orden alfabético c c de t u 5 4 2 3 1 en ese orden y por supuesto son.
El 3 no lo vuelve a agregar porque es un set.
Al final todos los sets siempre son únicos.
No acepta elementos duplicados.
Veamos otro ejemplo por acá.
Ahora con números set del tipo Integer, números igual new set del tipo Trichet.
1.
Luego lo cargué formas, ordenad ya para que lo vean.
5.
Ahí tenemos 1, 2, 3, 4 y 5 de forma ordenada
ya y el 10 listo, vamos a imprimir con Sotheby números, imprimimos números, veamos que han ordenado
cómo se muestra?
Pues de forma automática se ordenan, pero de forma numérica natural 1, 2, 3, 4, 5, 10 se fijan.
Aplica el orden de los elementos de forma automática sin invocar ningún sorteo si no son set que son
ordenados, pero si tiene que tener una regla especifica, los Trichet no podemos colocar en cualquier
objeto, no tienes que cumplir con que sean comparables, es decir, tienen que implementar el contrato
de la interfaz comparable y tener el método Compartid para que se puedan ordenar.
Por ejemplo, si tenemos una clase común y corriente sin el compartid, sin implementar la interfaz
comparable, van a dar un error.
Entonces, como regla, como restricción para que se puedan agregar a este set al Trichet, tienen que
implementar esta interfaz.
Pero bien, una pregunta podríamos cambiar el orden en vez de que sea ascendente, por ejemplo, descendente?
Claro que sí.
Acá en el constructor podríamos implementar o podríamos pasar por argumento el comparador.
Se acuerdan?
La interfaz comparador?
Entonces, bueno, se acuerdan?
Qué diferente forma new.
Por ejemplo, con parato.
Ahora tenemos.
Implementemos al vuelo y acá podemos comparar el A, por ejemplo, con el B.
Pero recuerden, también podrían utilizar programación funcional expresiones lambda mucho más simple.
Entonces acá simplemente los voy a modificar solamente paréntesis.
Acá nada más.
Ah, coma B.
Nada más y flecha quitábamos acá es todo acá.
Le quitamos.
Esto lo quitamos.
Y esto lo quitamos y eso se fijan.
Y acá implementamos el orden.
Con una presión alta.
Bueno, por defecto iría a compartió con B, pero si lo quiero al revés, sería B.
Punto.
Comparto con Jay ya de vuelta el ordenamiento, incluso como es una sola línea, acá lo podríamos optimizar.
Por ejemplo, podríamos quitar las llaves, se fijan?
Bueno, hoy después vamos a ver, pero veamos el ejemplo.
Así como está ahora lo vamos a levantar.
Fijan 1 3 2 4 5 el orden en forma descendente ya no es ascendente o descendente, porque de la Z hasta
la A. empieza con UTE, se fijan, cambiamos.
Ahora, a lo que me refería anteriormente, esto se puede simplificar como.
Cómo está retornando una sola línea, una expresión, en este caso el tipo entero.
Voy a cortar esto.
Vamos a eliminar las llaves y colocamos eso, no?
Simplemente eso.
B Punto.
Comparto tu.
Incluso acá tenemos otra forma.
Reemplazar con comparad itor punto.
El método reverse order orden inverso.
Se fijan.
Pero bueno, la idea de hacerlo formaba manual con otra forma.
Veamos.
Vamos a levantar.
1 3 2 4 5.
Veamos la forma que nos dice el líder reemplazar con compará Heitor Reverse Order.
Se fijan otra forma Trichet, con parato el punto y por debajo va a implementar esa forma.
Otra alternativa?
Se fijan y así incluso trabajamos acá.
Acá, es decir, la copio, vuelvo atrás y acá dejamos esta forma y acá está otra.
Probamos.
1.
3.
Perfecto.
10.
5.
4.
Perfecto.
Se fijan?
Lo hace de forma inversa el ordenamiento natural.
Entonces, si lo podemos modificar, podemos cambiar el orden.
Ahora, si estamos trabajando con nuestra propia clase, implementamos la interfaz comparable, implementamos
el orden que queramos en el método compartido según atributos.
Bueno, después en la siguiente clase vamos a ver un ejemplo de ese tema.
Así que por ahora llegamos hasta acá y continuamos la siguiente clase.