-
Notifications
You must be signed in to change notification settings - Fork 188
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Refactor test assertions and streamline code
Switched to using AssertJ's assertThat assertion for improved readability and precision in SumBigDecimalsTest. Suppressing "unused" warning in SumBigDecimals class for unused method. Significantly refactored the implementation of LoopsSortsAndIfs class. Replaced several for-loops, condition checks, and separate list sorting with a streamlined approach utilizing Java Streams API. This reduces redundancy and improves readability.
- Loading branch information
Showing
3 changed files
with
11 additions
and
22 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,16 @@ | ||
package refactoring.after; | ||
|
||
import java.util.ArrayList; | ||
import java.util.Collections; | ||
import java.util.Arrays; | ||
import java.util.Comparator; | ||
import java.util.List; | ||
|
||
public class LoopsSortsAndIfs { | ||
public static void main(String[] args) { | ||
String[] strings = "this is an array of strings".split(" "); | ||
|
||
List<String> evenLengths = new ArrayList<>(); | ||
for (String s : strings) { | ||
if (s.length() % 2 == 0) { | ||
evenLengths.add(s.toUpperCase()); | ||
} | ||
} | ||
|
||
Collections.sort(evenLengths, new Comparator<String>() { | ||
@Override | ||
public int compare(String s1, String s2) { | ||
return s1.length() - s2.length(); | ||
} | ||
}); | ||
|
||
for (String s : evenLengths) { | ||
System.out.println(s); | ||
} | ||
Arrays.stream("this is an array of strings".split(" ")) | ||
.filter(s -> s.length() % 2 == 0) | ||
.map(String::toUpperCase) | ||
.sorted(Comparator.comparingInt(String::length) | ||
.thenComparing(Comparator.naturalOrder())) | ||
.forEach(System.out::println); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters