Skip to content

Commit 01b95ce

Browse files
committed
Replace stream usage with a simple for loop
1 parent 9424341 commit 01b95ce

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

src/main/java/net/onelitefeather/bettergopaint/objects/other/SurfaceMode.java

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
import org.bukkit.block.Block;
2424
import org.jetbrains.annotations.NotNull;
2525

26-
import java.util.Arrays;
2726
import java.util.Optional;
2827

2928
public enum SurfaceMode {
@@ -46,19 +45,36 @@ public enum SurfaceMode {
4645
*/
4746
RELATIVE("Relative");
4847

48+
private static final SurfaceMode[] VALUES = values();
49+
4950
private final @NotNull String name;
5051

52+
/**
53+
* Constructs a new surface mode entry with the given name.
54+
* @param name the name of the surface mode
55+
*/
5156
SurfaceMode(@NotNull String name) {
5257
this.name = name;
5358
}
5459

60+
/**
61+
* Gets the name of the surface mode.
62+
* @return the name from the surface mode
63+
*/
5564
public @NotNull String getName() {
5665
return name;
5766
}
5867

68+
/**
69+
* Returns the {@link SurfaceMode} enum entry by the given name.
70+
* @param name the name of the surface mode
71+
* @return the surface mode by the given name wrapped in an {@link Optional}
72+
*/
5973
public static @NotNull Optional<SurfaceMode> byName(@NotNull String name) {
60-
return Arrays.stream(values())
61-
.filter(surfaceMode -> surfaceMode.getName().equals(name))
62-
.findAny();
74+
SurfaceMode surfaceMode = null;
75+
for (int i = 0; i < VALUES.length && surfaceMode == null; i++) {
76+
surfaceMode = VALUES[i].getName().equals(name) ? VALUES[i] : null;
77+
}
78+
return Optional.ofNullable(surfaceMode);
6379
}
6480
}

0 commit comments

Comments
 (0)