Criei uma api de java para evitar codigo boilerplate, criei um sistema proprio de Scanner Check Primitives Interface IO, system control com For If Switch fluentes. Refatorei seu codigo usando ela e ficou assim:
import com.github.rickmvi.jtoolbox.console.IO;
import com.github.rickmvi.jtoolbox.console.utils.Scan;
import com.github.rickmvi.jtoolbox.utils.Numbers;
public class Main {
public static void main(String[] args) {
int number = Scan.readIntPrompt("Enter a number:");
if (Numbers.isOdd(number)) {
IO.format("The number {} is odd.", number);
return;
}
IO.format("The number {} is even.", number);
}
}
Numbers class utility method Odder:
@Contract(
pure = true
)
public static boolean isOdd(int value) {
return (value & 1) != 0;
}
Interface IO format method system:
static void format(Object format, @Nullable Object... args) {
If.isTrue(format != null, () -> print(StringFormatter.format(Stringifier.toString(format), args))).orElse(IO::newline);
}
Saida no console: