Kumar sathish:
Voy a enviar dos variables y si las variables se van a comprobar si es nulo o no. Si no es nulo, concatenar dos cadenas con cualquier delimitador. O regrese sólo uno o cadena vacía.
¿Tenemos cualquier método incorporado a prueba o alguna forma mejor que la de abajo?
private String getValue(String valueOne, String valueTwo) {
String value = null;
if(valueOne != null) {
value = valueOne;
}
if(value != null && valueTwo != null) {
value += "-" + valueTwo;
}else if(valueTwo != null) {
value = valueTwo;
}
return value !=null ? value : "";
}
a = "abc" and b = "efg"
OUTPUT: "abc-efg"
a = null and b = "abc"
OUTPUT: "abc";
Martin van Wingerden:
Elijo aceptar los argumentos de números, pero cambiando para aceptar sólo dos es fácil, se puede entonces todavía uso Stream.of
private String getValue2(String... values) {
return Stream.of(values)
.filter(Objects::nonNull)
.collect(Collectors.joining("-"));
}