Skip to content

Commit

Permalink
use stream instead of for-loop to sum array
Browse files Browse the repository at this point in the history
  • Loading branch information
Kelvin Wong committed Nov 1, 2020
1 parent b83f050 commit 630ef27
Showing 1 changed file with 8 additions and 10 deletions.
18 changes: 8 additions & 10 deletions src/main/java/com/ordestiny/tdd/kata/StringCalculator.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.ordestiny.tdd.kata;

import java.text.DecimalFormat;
import java.util.Arrays;
import java.util.regex.Pattern;

public class StringCalculator {
Expand Down Expand Up @@ -73,18 +74,15 @@ private double getSum(String numbers, String delimiter) {

String[] arrayOfStringNumbers = numbers.split(delimiter);

return sumStringDigits(arrayOfStringNumbers);
return sum(arrayOfStringNumbers);
}

private double sumStringDigits(String[] digitsArray) {
double result = 0.0;

for (String digit : digitsArray) {
double num = Double.parseDouble(digit);
result += num;
}

return result;
private double sum(String[] numbers) {
Double sum = Arrays.stream(numbers)
.map(number-> Double.valueOf(number))
.reduce(0.0, Double::sum);

return sum;
}

private String format(double value) {
Expand Down

0 comments on commit 630ef27

Please sign in to comment.