From 66146ea761ecb3ef0fb01ea26807da0ca41dd3ac Mon Sep 17 00:00:00 2001 From: Chirag Dewan Date: Tue, 19 Mar 2019 20:40:26 +0530 Subject: [PATCH] BAEL2489 Avoid check for null statement in Java --- .../com/baeldung/nulls/EmptyCollections.java | 7 ++++--- .../baeldung/nulls/FindBugsAnnotations.java | 5 +++-- .../com/baeldung/nulls/Preconditions.java | 18 ++++++++++------- .../baeldung/nulls/PrimitivesAndWrapper.java | 5 +++-- .../java/com/baeldung/nulls/UsingObjects.java | 11 +++------- .../nulls/PrimitivesAndWrapperUnitTest.java | 8 ++++---- .../baeldung/nulls/UsingOptionalUnitTest.java | 5 +++++ .../nulls/UsingStringUtilsUnitTest.java | 20 +++++++++---------- 8 files changed, 43 insertions(+), 36 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/nulls/EmptyCollections.java b/core-java/src/main/java/com/baeldung/nulls/EmptyCollections.java index 95e49e4e91..5958cf8dc6 100644 --- a/core-java/src/main/java/com/baeldung/nulls/EmptyCollections.java +++ b/core-java/src/main/java/com/baeldung/nulls/EmptyCollections.java @@ -7,11 +7,12 @@ import java.util.stream.Stream; public class EmptyCollections { - public List names(){ - if (userExist()) + public List names() { + if (userExist()) { return Stream.of(readName()).collect(Collectors.toList()); - else + } else { return Collections.emptyList(); + } } private boolean userExist() { diff --git a/core-java/src/main/java/com/baeldung/nulls/FindBugsAnnotations.java b/core-java/src/main/java/com/baeldung/nulls/FindBugsAnnotations.java index f879f033c9..a3804f6af5 100644 --- a/core-java/src/main/java/com/baeldung/nulls/FindBugsAnnotations.java +++ b/core-java/src/main/java/com/baeldung/nulls/FindBugsAnnotations.java @@ -16,10 +16,11 @@ public class FindBugsAnnotations { @Nonnull public Object process() throws Exception { Object result = doSomething(); - if (result == null) + if (result == null) { throw new Exception("Processing fail. Got a null response"); - else + } else { return result; + } } private Object doSomething() { diff --git a/core-java/src/main/java/com/baeldung/nulls/Preconditions.java b/core-java/src/main/java/com/baeldung/nulls/Preconditions.java index 447026f1e3..9d9633a13e 100644 --- a/core-java/src/main/java/com/baeldung/nulls/Preconditions.java +++ b/core-java/src/main/java/com/baeldung/nulls/Preconditions.java @@ -3,8 +3,9 @@ package com.baeldung.nulls; public class Preconditions { public void goodAccept(String one, String two, String three) { - if (one == null || two == null || three == null) + if (one == null || two == null || three == null) { throw new IllegalArgumentException(); + } process(one); process(two); @@ -12,20 +13,23 @@ public class Preconditions { } public void badAccept(String one, String two, String three) { - if (one == null) + if (one == null) { throw new IllegalArgumentException(); - else + } else { process(one); + } - if (two == null) + if (two == null) { throw new IllegalArgumentException(); - else + } else { process(two); + } - if (three == null) + if (three == null) { throw new IllegalArgumentException(); - else + } else { process(three); + } } diff --git a/core-java/src/main/java/com/baeldung/nulls/PrimitivesAndWrapper.java b/core-java/src/main/java/com/baeldung/nulls/PrimitivesAndWrapper.java index 8f662b3760..c75918c486 100644 --- a/core-java/src/main/java/com/baeldung/nulls/PrimitivesAndWrapper.java +++ b/core-java/src/main/java/com/baeldung/nulls/PrimitivesAndWrapper.java @@ -11,10 +11,11 @@ public class PrimitivesAndWrapper { } public static Integer goodSum(Integer a, Integer b) { - if (a != null && b != null) + if (a != null && b != null) { return a + b; - else + } else { throw new IllegalArgumentException(); + } } } diff --git a/core-java/src/main/java/com/baeldung/nulls/UsingObjects.java b/core-java/src/main/java/com/baeldung/nulls/UsingObjects.java index 7383ae84a7..5384edee5e 100644 --- a/core-java/src/main/java/com/baeldung/nulls/UsingObjects.java +++ b/core-java/src/main/java/com/baeldung/nulls/UsingObjects.java @@ -4,13 +4,8 @@ import java.util.Objects; public class UsingObjects { - public void accept(Object param) throws Exception { - try { - Objects.requireNonNull(param); - } catch (NullPointerException e) { - throw new Exception(); - } - - //doSomething() + public void accept(Object param) { + Objects.requireNonNull(param); + // doSomething() } } diff --git a/core-java/src/test/java/com/baeldung/nulls/PrimitivesAndWrapperUnitTest.java b/core-java/src/test/java/com/baeldung/nulls/PrimitivesAndWrapperUnitTest.java index 67fe173883..3c524387a4 100644 --- a/core-java/src/test/java/com/baeldung/nulls/PrimitivesAndWrapperUnitTest.java +++ b/core-java/src/test/java/com/baeldung/nulls/PrimitivesAndWrapperUnitTest.java @@ -8,7 +8,7 @@ import org.junit.jupiter.api.Test; class PrimitivesAndWrapperUnitTest { @Test - public void givenWrappers_whenBothArgsNonNull_thenReturnResult() { + public void givenBothArgsNonNull_whenCallingWrapperSum_thenReturnSum() { Integer sum = PrimitivesAndWrapper.wrapperSum(0, 0); @@ -16,17 +16,17 @@ class PrimitivesAndWrapperUnitTest { } @Test() - public void givenWrappers_whenOneArgIsNull_thenThrowNullPointerException() { + public void givenOneArgIsNull_whenCallingWrapperSum_thenThrowNullPointerException() { assertThrows(NullPointerException.class, () -> PrimitivesAndWrapper.wrapperSum(null, 2)); } @Test() - public void givenWrappers_whenBothArgsAreNull_thenThrowNullPointerException() { + public void givenBothArgsNull_whenCallingWrapperSum_thenThrowNullPointerException() { assertThrows(NullPointerException.class, () -> PrimitivesAndWrapper.wrapperSum(null, null)); } @Test() - public void givenWrappersWithNullCheck_whenAnyArgIsNull_thenThrowIllegalArgumentException() { + public void givenOneArgNull_whenCallingGoodSum_thenThrowIllegalArgumentException() { assertThrows(IllegalArgumentException.class, () -> PrimitivesAndWrapper.goodSum(null, 2)); } diff --git a/core-java/src/test/java/com/baeldung/nulls/UsingOptionalUnitTest.java b/core-java/src/test/java/com/baeldung/nulls/UsingOptionalUnitTest.java index 45367204b7..d9d245369b 100644 --- a/core-java/src/test/java/com/baeldung/nulls/UsingOptionalUnitTest.java +++ b/core-java/src/test/java/com/baeldung/nulls/UsingOptionalUnitTest.java @@ -20,18 +20,23 @@ class UsingOptionalUnitTest { @Test public void whenArgIsFalse_thenReturnEmptyResponse() { + Optional result = classUnderTest.process(false); + assertFalse(result.isPresent()); } @Test public void whenArgIsTrue_thenReturnValidResponse() { + Optional result = classUnderTest.process(true); + assertTrue(result.isPresent()); } @Test public void whenArgIsFalse_thenChainResponseAndThrowException() { + assertThrows(Exception.class, () -> classUnderTest.process(false).orElseThrow(() -> new Exception())); } } \ No newline at end of file diff --git a/core-java/src/test/java/com/baeldung/nulls/UsingStringUtilsUnitTest.java b/core-java/src/test/java/com/baeldung/nulls/UsingStringUtilsUnitTest.java index 451775abe1..99b1dbe6b4 100644 --- a/core-java/src/test/java/com/baeldung/nulls/UsingStringUtilsUnitTest.java +++ b/core-java/src/test/java/com/baeldung/nulls/UsingStringUtilsUnitTest.java @@ -16,28 +16,28 @@ class UsingStringUtilsUnitTest { } @Test - public void givenAccept_whenArgIsNull_throwIllegalArgumentException() { - Assertions.assertThrows(IllegalArgumentException.class, () -> classUnderTest.accept(null)); + public void givenArgIsNull_whenCallingAccept_throwIllegalArgumentException() { + assertThrows(IllegalArgumentException.class, () -> classUnderTest.accept(null)); } @Test - public void givenAccept_whenArgIsEmpty_throwIllegalArgumentException() { - Assertions.assertThrows(IllegalArgumentException.class, () -> classUnderTest.accept("")); + public void givenArgIsEmpty_whenCallingAccept_throwIllegalArgumentException() { + assertThrows(IllegalArgumentException.class, () -> classUnderTest.accept("")); } @Test - public void givenAcceptOnlyNonBlank_whenArgIsNull_throwIllegalArgumentException() { - Assertions.assertThrows(IllegalArgumentException.class, () -> classUnderTest.acceptOnlyNonBlank(null)); + public void givenArgIsNull_whenCallingAcceptOnlyNonBlank_throwIllegalArgumentException() { + assertThrows(IllegalArgumentException.class, () -> classUnderTest.acceptOnlyNonBlank(null)); } @Test - public void givenAcceptOnlyNonBlank_whenArgIsEmpty_throwIllegalArgumentException() { - Assertions.assertThrows(IllegalArgumentException.class, () -> classUnderTest.acceptOnlyNonBlank("")); + public void givenArgIsEmpty_whenCallingAcceptOnlyNonBlank_throwIllegalArgumentException() { + assertThrows(IllegalArgumentException.class, () -> classUnderTest.acceptOnlyNonBlank("")); } @Test - public void givenAcceptOnlyNonBlank_whenArgIsBlank_throwIllegalArgumentException() { - Assertions.assertThrows(IllegalArgumentException.class, () -> classUnderTest.acceptOnlyNonBlank(" ")); + public void givenArgIsBlank_whenCallingAcceptOnlyNonBlank_throwIllegalArgumentException() { + assertThrows(IllegalArgumentException.class, () -> classUnderTest.acceptOnlyNonBlank(" ")); } } \ No newline at end of file