Item 6. Unnecessary Objects
λΆνμν κ°μ²΄ μμ±μ νΌνλ λ°©λ² - μ μ μ΄κΈ°ν
class RomanNumerals {
// 1. μ κ·ννμμ μ¬μ©ν λλ§λ€ Pattern μΈμ€ν΄μ€λ₯Ό μμ±νμ§ μκ³ μ μ μ΄κΈ°ν λΈλ‘μμ μμ±
private static final Pattern ROMAN = Pattern.compile(
"^(?=.)M*(C[MD]|D?C{0,3})"
+ "(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$");
static boolean isRomanNumeral1(String s) {
return ROMAN.matcher(s).matches();
}
// 2. μ κ·ννμμ μ¬μ©ν λλ§λ€ Pattern μΈμ€ν΄μ€λ₯Ό μμ±
static boolean isRomanNumeral2(String s) {
return s.matches("^(?=.)M*(C[MD]|D?C{0,3})"
+ "(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$");
}
}λΆνμν κ°μ²΄ μμ±μ μ - μ€ν λ°μ±(auto boxing)
Last updated