|
@@ -1,15 +1,26 @@
|
|
|
package pl.dmcs;
|
|
package pl.dmcs;
|
|
|
|
|
|
|
|
|
|
+import java.util.regex.Pattern;
|
|
|
|
|
+
|
|
|
public class Calculator {
|
|
public class Calculator {
|
|
|
public int add(String numbers) {
|
|
public int add(String numbers) {
|
|
|
if (numbers == null || numbers.isEmpty()) {
|
|
if (numbers == null || numbers.isEmpty()) {
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|
|
|
- // Split the string using both commas and new lines as delimiters
|
|
|
|
|
- String[] numArray = numbers.split("[,\n]");
|
|
|
|
|
|
|
+
|
|
|
|
|
+ String delimiter = "[,\n]";
|
|
|
|
|
+ if (numbers.startsWith("//")) {
|
|
|
|
|
+ int delimiterIndex = numbers.indexOf("\n");
|
|
|
|
|
+ delimiter = Pattern.quote(numbers.substring(2, delimiterIndex));
|
|
|
|
|
+ numbers = numbers.substring(delimiterIndex + 1);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ String[] numArray = numbers.split(delimiter);
|
|
|
int sum = 0;
|
|
int sum = 0;
|
|
|
for (String num : numArray) {
|
|
for (String num : numArray) {
|
|
|
- sum += Integer.parseInt(num.trim());
|
|
|
|
|
|
|
+ if (!num.trim().isEmpty()) {
|
|
|
|
|
+ sum += Integer.parseInt(num.trim());
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
return sum;
|
|
return sum;
|
|
|
}
|
|
}
|