Skip to content

Commit 1a76d19

Browse files
authored
Merge pull request eugenp#8068 from martinvw/feature/BAEL-3291
[BAEL-3291] Move missing code snippets for the String Numeric article
2 parents 960bffd + 81c6758 commit 1a76d19

31 files changed

+241
-238
lines changed

java-strings-ops/src/main/java/com/baeldung/string/AppendCharAtPositionX.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*/
1010
public class AppendCharAtPositionX {
11-
11+
1212
public String addCharUsingCharArray(String str, char ch, int position) {
1313
validate(str, position);
1414
int len = str.length();
@@ -30,15 +30,14 @@ public String addCharUsingStringBuilder(String str, char ch, int position) {
3030
sb.insert(position, ch);
3131
return sb.toString();
3232
}
33-
33+
3434
private void validate(String str, int position) {
3535
if (str == null) {
3636
throw new IllegalArgumentException("Str should not be null");
3737
}
3838
int len = str.length();
3939
if (position < 0 || position > len) {
40-
throw new IllegalArgumentException("position[" + position + "] should be "
41-
+ "in the range 0.." + len + " for string " + str);
40+
throw new IllegalArgumentException("position[" + position + "] should be " + "in the range 0.." + len + " for string " + str);
4241
}
4342
}
4443

java-strings-ops/src/main/java/com/baeldung/string/StringHelper.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,15 @@ static String removeLastCharRegex(String s) {
1212
}
1313

1414
static String removeLastCharOptional(String s) {
15-
return Optional.ofNullable(s).filter(str -> str.length() != 0).map(str -> str.substring(0, str.length() - 1)).orElse(s);
15+
return Optional.ofNullable(s)
16+
.filter(str -> str.length() != 0)
17+
.map(str -> str.substring(0, str.length() - 1))
18+
.orElse(s);
1619
}
1720

1821
static String removeLastCharRegexOptional(String s) {
19-
return Optional.ofNullable(s).map(str -> str.replaceAll(".$", "")).orElse(s);
22+
return Optional.ofNullable(s)
23+
.map(str -> str.replaceAll(".$", ""))
24+
.orElse(s);
2025
}
2126
}

java-strings/src/main/java/com/baeldung/stringisnumeric/Benchmarking.java renamed to java-strings-ops/src/main/java/com/baeldung/string/isnumeric/Benchmarking.java

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.baeldung.stringisnumeric;
1+
package com.baeldung.string.isnumeric;
22

33
import java.util.concurrent.TimeUnit;
44

@@ -13,13 +13,11 @@
1313
import org.openjdk.jmh.runner.options.Options;
1414
import org.openjdk.jmh.runner.options.OptionsBuilder;
1515

16-
1716
public class Benchmarking {
1817
public static void main(String[] args) throws RunnerException {
19-
Options opt = new OptionsBuilder()
20-
.include(Benchmarking.class.getSimpleName())
21-
.forks(1)
22-
.build();
18+
Options opt = new OptionsBuilder().include(Benchmarking.class.getSimpleName())
19+
.forks(1)
20+
.build();
2321

2422
new Runner(opt).run();
2523
}
@@ -28,45 +26,45 @@ public static void main(String[] args) throws RunnerException {
2826
public static class ExecutionPlan {
2927
public String number = Integer.toString(Integer.MAX_VALUE);
3028
public boolean isNumber = false;
31-
public IsNumeric isNumeric= new IsNumeric();
29+
public IsNumeric isNumeric = new IsNumeric();
3230
}
33-
34-
@Benchmark
31+
32+
@Benchmark
3533
@BenchmarkMode(Mode.AverageTime)
3634
@OutputTimeUnit(TimeUnit.NANOSECONDS)
3735
public void usingCoreJava(ExecutionPlan plan) {
3836
plan.isNumber = plan.isNumeric.usingCoreJava(plan.number);
3937
}
40-
41-
@Benchmark
38+
39+
@Benchmark
4240
@BenchmarkMode(Mode.AverageTime)
4341
@OutputTimeUnit(TimeUnit.NANOSECONDS)
4442
public void usingRegularExpressions(ExecutionPlan plan) {
4543
plan.isNumber = plan.isNumeric.usingRegularExpressions(plan.number);
4644
}
47-
48-
@Benchmark
45+
46+
@Benchmark
4947
@BenchmarkMode(Mode.AverageTime)
5048
@OutputTimeUnit(TimeUnit.NANOSECONDS)
5149
public void usingNumberUtils_isCreatable(ExecutionPlan plan) {
5250
plan.isNumber = plan.isNumeric.usingNumberUtils_isCreatable(plan.number);
5351
}
54-
55-
@Benchmark
52+
53+
@Benchmark
5654
@BenchmarkMode(Mode.AverageTime)
5755
@OutputTimeUnit(TimeUnit.NANOSECONDS)
5856
public void usingNumberUtils_isParsable(ExecutionPlan plan) {
5957
plan.isNumber = plan.isNumeric.usingNumberUtils_isParsable(plan.number);
6058
}
61-
62-
@Benchmark
59+
60+
@Benchmark
6361
@BenchmarkMode(Mode.AverageTime)
6462
@OutputTimeUnit(TimeUnit.NANOSECONDS)
6563
public void usingStringUtils_isNumeric(ExecutionPlan plan) {
6664
plan.isNumber = plan.isNumeric.usingStringUtils_isNumeric(plan.number);
6765
}
68-
69-
@Benchmark
66+
67+
@Benchmark
7068
@BenchmarkMode(Mode.AverageTime)
7169
@OutputTimeUnit(TimeUnit.NANOSECONDS)
7270
public void usingStringUtils_isNumericSpace(ExecutionPlan plan) {

java-strings/src/main/java/com/baeldung/string/checkinputs/CheckIntegerInput.java renamed to java-strings-ops/src/main/java/com/baeldung/string/isnumeric/CheckIntegerInput.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
1-
package com.baeldung.string.checkinputs;
1+
package com.baeldung.string.isnumeric;
22

33
import java.util.Scanner;
44

55
public class CheckIntegerInput {
66

77
public static void main(String[] args) {
8-
98
try (Scanner scanner = new Scanner(System.in)) {
109
System.out.println("Enter an integer : ");
11-
10+
1211
if (scanner.hasNextInt()) {
1312
System.out.println("You entered : " + scanner.nextInt());
1413
} else {

java-strings/src/main/java/com/baeldung/stringisnumeric/IsNumeric.java renamed to java-strings-ops/src/main/java/com/baeldung/string/isnumeric/IsNumeric.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,34 @@
1-
package com.baeldung.stringisnumeric;
1+
package com.baeldung.string.isnumeric;
22

33
import org.apache.commons.lang3.StringUtils;
44
import org.apache.commons.lang3.math.NumberUtils;
55

66
public class IsNumeric {
77
public boolean usingCoreJava(String strNum) {
88
try {
9-
double d = Double.parseDouble(strNum);
9+
Double.parseDouble(strNum);
1010
} catch (NumberFormatException | NullPointerException nfe) {
1111
return false;
1212
}
1313
return true;
1414
}
15-
15+
1616
public boolean usingRegularExpressions(String strNum) {
1717
return strNum.matches("-?\\d+(\\.\\d+)?");
1818
}
19-
19+
2020
public boolean usingNumberUtils_isCreatable(String strNum) {
2121
return NumberUtils.isCreatable(strNum);
2222
}
23-
23+
2424
public boolean usingNumberUtils_isParsable(String strNum) {
2525
return NumberUtils.isParsable(strNum);
2626
}
27-
27+
2828
public boolean usingStringUtils_isNumeric(String strNum) {
2929
return StringUtils.isNumeric(strNum);
3030
}
31-
31+
3232
public boolean usingStringUtils_isNumericSpace(String strNum) {
3333
return StringUtils.isNumericSpace(strNum);
3434
}
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,31 @@
1-
package com.baeldung.stringisnumeric;
1+
package com.baeldung.string.isnumeric;
22

33
import org.apache.log4j.Logger;
44

55
public class IsNumericDriver {
6-
private static IsNumeric isNumeric;
76
private static Logger LOG = Logger.getLogger(IsNumericDriver.class);
8-
static {
9-
isNumeric =new IsNumeric();
10-
11-
}
12-
7+
8+
private static IsNumeric isNumeric = new IsNumeric();
9+
1310
public static void main(String[] args) {
1411
LOG.info("Testing all methods...");
15-
12+
1613
boolean res = isNumeric.usingCoreJava("1001");
1714
LOG.info("Using Core Java : " + res);
18-
15+
1916
res = isNumeric.usingRegularExpressions("1001");
2017
LOG.info("Using Regular Expressions : " + res);
21-
22-
res =isNumeric.usingNumberUtils_isCreatable("1001");
18+
19+
res = isNumeric.usingNumberUtils_isCreatable("1001");
2320
LOG.info("Using NumberUtils.isCreatable : " + res);
24-
25-
res =isNumeric.usingNumberUtils_isParsable("1001");
21+
22+
res = isNumeric.usingNumberUtils_isParsable("1001");
2623
LOG.info("Using NumberUtils.isParsable : " + res);
27-
28-
res =isNumeric.usingStringUtils_isNumeric("1001");
24+
25+
res = isNumeric.usingStringUtils_isNumeric("1001");
2926
LOG.info("Using StringUtils.isNumeric : " + res);
30-
31-
res =isNumeric.usingStringUtils_isNumericSpace("1001");
27+
28+
res = isNumeric.usingStringUtils_isNumericSpace("1001");
3229
LOG.info("Using StringUtils.isNumericSpace : " + res);
3330
}
3431
}

java-strings-ops/src/main/java/com/baeldung/string/tostring/Customer.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,20 @@
33
public class Customer {
44
private String firstName;
55
private String lastName;
6-
6+
77
public String getFirstName() {
8-
return firstName;
8+
return firstName;
99
}
10+
1011
public void setFirstName(String firstName) {
11-
this.firstName = firstName;
12+
this.firstName = firstName;
1213
}
14+
1315
public String getLastName() {
14-
return lastName;
16+
return lastName;
1517
}
18+
1619
public void setLastName(String lastName) {
17-
this.lastName = lastName;
20+
this.lastName = lastName;
1821
}
1922
}

java-strings-ops/src/main/java/com/baeldung/string/tostring/CustomerArrayToString.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,17 @@
44

55
public class CustomerArrayToString extends Customer {
66
private Order[] orders;
7-
7+
88
public Order[] getOrders() {
99
return orders;
1010
}
11+
1112
public void setOrders(Order[] orders) {
1213
this.orders = orders;
1314
}
15+
1416
@Override
1517
public String toString() {
16-
return "Customer [orders=" + Arrays.toString(orders) + ", getFirstName()=" + getFirstName()
17-
+ ", getLastName()=" + getLastName() + "]";
18-
}
18+
return "Customer [orders=" + Arrays.toString(orders) + ", getFirstName()=" + getFirstName() + ", getLastName()=" + getLastName() + "]";
19+
}
1920
}

java-strings-ops/src/main/java/com/baeldung/string/tostring/CustomerComplexObjectToString.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
public class CustomerComplexObjectToString extends Customer {
44
private Order order;
5-
5+
66
public Order getOrder() {
77
return order;
88
}
@@ -13,7 +13,6 @@ public void setOrder(Order order) {
1313

1414
@Override
1515
public String toString() {
16-
return "Customer [order=" + order + ", getFirstName()=" + getFirstName()
17-
+ ", getLastName()=" + getLastName() + "]";
18-
}
16+
return "Customer [order=" + order + ", getFirstName()=" + getFirstName() + ", getLastName()=" + getLastName() + "]";
17+
}
1918
}

java-strings-ops/src/main/java/com/baeldung/string/tostring/CustomerPrimitiveToString.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,17 @@
22

33
public class CustomerPrimitiveToString extends Customer {
44
private long balance;
5-
5+
66
public long getBalance() {
77
return balance;
88
}
9-
9+
1010
public void setBalance(long balance) {
1111
this.balance = balance;
1212
}
13-
13+
1414
@Override
1515
public String toString() {
16-
return "Customer [balance=" + balance + ", getFirstName()=" + getFirstName()
17-
+ ", getLastName()=" + getLastName() + "]";
16+
return "Customer [balance=" + balance + ", getFirstName()=" + getFirstName() + ", getLastName()=" + getLastName() + "]";
1817
}
1918
}

0 commit comments

Comments
 (0)