En esta ocasión les mostraré como realizar de 2 maneras diferentes la funcionalidad del join de JavaScript en Java.
Este artículo está pensado para JavaScripteros, pero seguro que a algún Javero también le podría sorprender. Y sí… ya sé lo que piensan…
Pero a mi nadie me va a decir que no puedo hacer lo mismo de Javascript en Java 😉
Para probar la equivalencia, las soluciones que propongo deberán de poder servir para resolver el siguiente problema:
Dadas dos cadenas, concatenarlas y obtener una cadena sin duplicados ordenada alfabéticamente.
En Javascript la función join pertenece al prototipo de String y se encarga de unir un arreglo en una cadena con los delimitadores intermedios que se especifiquen.
La implementación del código de prueba en javascript sería algo como:
function longest(s1, s2) {
return Array.from(new Set((s1 s2).split("").sort())).join("");
} Si usas Java 8 hallarás muy útil la función join de la clase String, así como el uso de los streams (del API de stream por supuesto).
import java.util.Arrays;
import java.util.stream.Collectors;
/**
* Created by Javatlacati on 21/10/2016.
*/public class TwoToOne {
public static String longest(String s1, String s2) {
return String.join("",Arrays.stream((s1 s2).split("")).distinct().parallel().sorted().collect(Collectors.toList()));
}
} Otra forma es usar la función join de la clase StringUtils
import com.sun.deploy.util.StringUtils;
import java.util.Arrays;
import java.util.stream.Collectors;
/**
* Created by Javatlacati on 21/10/2016.
*/public class TwoToOne {
public static String longest(String s1, String s2) {
return StringUtils.join(Arrays.stream((s1 s2).split("")).distinct().parallel().sorted().collect(Collectors.toList()), "");
}
} El inconveniente de esta implementación es que usa una de las clases internas de sun, que ellos crearon experimentalmente para realizar algunas tareas, y en un futuro podría desaparecer.
Entre algunas de las ventajas de las implementaciones del join de JavaScript que realizamos en Java podemos notar que acepta tanto arreglos como colecciones (del API de colecciones por supuesto).
Te comparto aquí mis recomendaciones de cursos de Código Facilito. Codigofacilito.com es una plataforma virtual…
Te comparto aquí mis recomendaciones de cursos de Linkedin Learning. LinkedIn Learning es una plataforma…
Estos snippets de código para entrevista acerca de mockito espero te sean de mucha utilidad.…
En este tutorial aprenderá a usar expresiones regulares en Java de manera práctica para contar…
¿Entrevista de programación Java fullstack? No te preocupes, te tengo un compendio de preguntas de…
Te recomiendo algunos cursos de Udemy para mejorar tus softskills y así mejorar en tu…