BAEL-5228: Adding code for approaches to concatenating null string in java (#11464)
* commited initial code for hexagonal architecture * Deleting to check in again * Deleing to check in again * Push first code for Hexagonal Architecture * final code with UT for JSON to Java conversion * removed hexagonal-architecture code from last commit * BEL-5071 updated README * BAEL-5071: Undo README changes and added a nested object in the JSON example. * BAEL-5071: fixed whitespace/indentation in JsonToJavaClassConversion.java * BAEL-5151: Added code for getting the first of a String * BAEL-5151: Renamed Unit Test * BAEL-5151: Moved the files from core-java-string-operations to core-java-string-operations-3 * BAEL-5151: Replaced tabs with white spaces. * BAEL-5228: Adding code for approaches to concatening null string in java * BAEL-5228: Moved file to correct folder and added a UT. * BAEL-5228: corrected import statements. * BAEL-5228: corrected last commit. * BAEL-5228: removed extra import. * BAEL-5228: renamed UT Co-authored-by: Vaibhav Jain <vaibhav.ashokjain@vodafone.com>
This commit is contained in:
parent
719c4e4e0b
commit
2026f9cae7
|
@ -0,0 +1,86 @@
|
||||||
|
package com.baeldung.concatenation;
|
||||||
|
|
||||||
|
import java.util.StringJoiner;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
|
public class ConcatenatingNull {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
String[] values = { "Java ", null, "", "is ", "great!" };
|
||||||
|
|
||||||
|
concatenateUsingPlusOperator(values);
|
||||||
|
concatenateUsingHelperMethod(values);
|
||||||
|
concatenateUsingStringBuilder(values);
|
||||||
|
concatenateUsingJoin(values);
|
||||||
|
concatenateUsingStringJoiner(values);
|
||||||
|
concatenateUsingCollectorsJoining(values);
|
||||||
|
concatenateUsingStringConcat(values);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String concatenateUsingStringConcat(String[] values) {
|
||||||
|
String result = "";
|
||||||
|
|
||||||
|
for (String value : values) {
|
||||||
|
result = result.concat(getNonNullString(value));
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String concatenateUsingCollectorsJoining(String[] values) {
|
||||||
|
String result = Stream.of(values).filter(value -> null != value).collect(Collectors.joining(""));
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String concatenateUsingStringJoiner(String[] values) {
|
||||||
|
StringJoiner result = new StringJoiner("");
|
||||||
|
|
||||||
|
for (String value : values) {
|
||||||
|
result = result.add(getNonNullString(value));
|
||||||
|
}
|
||||||
|
|
||||||
|
return result.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String concatenateUsingJoin(String[] values) {
|
||||||
|
String result = String.join("", values);
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String concatenateUsingStringBuilder(String[] values) {
|
||||||
|
StringBuilder result = new StringBuilder();
|
||||||
|
|
||||||
|
for (String value : values) {
|
||||||
|
result = result.append(getNonNullString(value));
|
||||||
|
}
|
||||||
|
|
||||||
|
return result.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String concatenateUsingHelperMethod(String[] values) {
|
||||||
|
String result = "";
|
||||||
|
|
||||||
|
for (String value : values) {
|
||||||
|
result = result + getNonNullString(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String concatenateUsingPlusOperator(String[] values) {
|
||||||
|
String result = "";
|
||||||
|
|
||||||
|
for (String value : values) {
|
||||||
|
result = result + (value == null ? "" : value);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String getNonNullString(String value) {
|
||||||
|
return value == null ? "" : value;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,59 @@
|
||||||
|
package com.baeldung.concatenation;
|
||||||
|
|
||||||
|
import static com.baeldung.concatenation.ConcatenatingNull.concatenateUsingCollectorsJoining;
|
||||||
|
import static com.baeldung.concatenation.ConcatenatingNull.concatenateUsingHelperMethod;
|
||||||
|
import static com.baeldung.concatenation.ConcatenatingNull.concatenateUsingJoin;
|
||||||
|
import static com.baeldung.concatenation.ConcatenatingNull.concatenateUsingPlusOperator;
|
||||||
|
import static com.baeldung.concatenation.ConcatenatingNull.concatenateUsingStringBuilder;
|
||||||
|
import static com.baeldung.concatenation.ConcatenatingNull.concatenateUsingStringConcat;
|
||||||
|
import static com.baeldung.concatenation.ConcatenatingNull.concatenateUsingStringJoiner;
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
public class ConcatenatingNullUnitTest {
|
||||||
|
|
||||||
|
String[] values = { "Java ", null, "", "is ", "great!" };
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenStringElementsWithNull_whenConcatenatedUsingPlus_thenNullIsIgnored() {
|
||||||
|
String result = concatenateUsingPlusOperator(values);
|
||||||
|
assertEquals("Java is great!", result);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenStringElementsWithNull_whenConcatenatedUsingHelperMethod_thenNullIsIgnored() {
|
||||||
|
String result = concatenateUsingHelperMethod(values);
|
||||||
|
assertEquals("Java is great!", result);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenStringElementsWithNull_whenConcatenatedUsingStringBuilder_thenNullIsIgnored() {
|
||||||
|
String result = concatenateUsingStringBuilder(values);
|
||||||
|
assertEquals("Java is great!", result);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenStringElementsWithNull_whenConcatenatedUsingJoin_thenNullIsNotIgnored() {
|
||||||
|
String result = concatenateUsingJoin(values);
|
||||||
|
assertEquals("Java nullis great!", result);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenStringElementsWithNull_whenConcatenatedUsingStringJoiner_thenNullIsIgnored() {
|
||||||
|
String result = concatenateUsingStringJoiner(values);
|
||||||
|
assertEquals("Java is great!", result);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenStringElementsWithNull_whenConcatenatedUsingCollectorsJoining_thenNullIsIgnored() {
|
||||||
|
String result = concatenateUsingCollectorsJoining(values);
|
||||||
|
assertEquals("Java is great!", result);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenStringElementsWithNull_whenConcatenatedUsingStringConcat_thenNullIsIgnored() {
|
||||||
|
String result = concatenateUsingStringConcat(values);
|
||||||
|
assertEquals("Java is great!", result);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue