封裝 myArray 工具類,使用字元陣列實現:郵箱格式驗證(含 @ 與 .)、純數字判斷、純英文字母判斷、閏年判斷、日期格式檢核(YYYY-MM-DD 含月份天數與閏年二月)。
// 郵箱驗證
public boolean isMail(String s) {
String[] req = {"@", "."};
for (String r : req) if (s.indexOf(r) == -1) return false;
return true;
}
// 數字/字母判斷:預置字元陣列逐一比對
public boolean isNumber(String s) {
for (char c : s.toCharArray()) {
boolean ok = false;
for (char d : cNum) if (c == d) { ok=true; break; }
if (!ok) return false;
}
return true;
}
// 日期檢核
public int chickData(String s) {
if (s.length()!=10) return -2;
int year = Integer.parseInt(s.substring(0,4));
int mon = Integer.parseInt(s.substring(5,7));
int day = Integer.parseInt(s.substring(8,10));
if (mon>12) return -1;
if (mon==2 && isLeap(year)) { if (day>29) return -1; }
else if (day > monthDays[mon-1]) return -1;
return 0;
}
private boolean isLeap(int y) { return y%100==0 && y%4==0; } // 簡化閏年規則
Pattern 正則表達式,更簡潔健壯。LocalDate.parse (Java 8+) 自動驗證格式與合法性。Character.isDigit()、isLetter() 內建方法。