public class myArray{
//初始化数组变量
char[] cNum = {'1','2','3','4','5','6','7','8','9','0'};
char[] cStr = {'a','b','c','d','e','f','g','h',
'i','j','k','l','m','n','o','p',
'q','r','s','t','u','v','w','x','y','z'};
int[] iMonth = {31,28,31,30,31,30,31,31,30,31,30,31};
String[] sMail = {"@","."};
/**
*<br>方法说明:校验电子邮件
*<br>输入参数:String sPara 被校验的电子邮件字符
*<br>返回类型:boolean 如果校验的格式符合电子邮件格式返回true;否则返回false
*/
public boolean isMail(String sPara){
for(int i=0;i<sMail.length;i++){
if(sPara.indexOf(sMail[i])==-1)
return false;
}
return true;
}
/**
*<br>方法说明:判断是否是数字
*<br>输入参数:String sPara。 需要判断的字符串
*<br>返回类型:boolean。如果都是数字类型,返回true;否则返回false
*/
public boolean isNumber(String sPara){
int iPLength = sPara.length();
for(int i=0;i<iPLength;i++){
char cTemp = sPara.charAt(i);
boolean bTemp = false;
for(int j=0;j<cNum.length;j++){
if(cTemp==cNum[j]){
bTemp = true;
break;
}
}
if(!bTemp) return false;
}
return true;
}
/**
*<br>方法说明:判断是否都是英文字符
*<br>输入参数:String sPara。要检查的字符
*<br>返回类型:boolean。如果都是字符返回true;反之为false
*/
public boolean isString(String sPara){
int iPLength = sPara.length();
for(int i=0;i<iPLength;i++){
char cTemp = sPara.charAt(i);
boolean bTemp = false;
for(int j=0;j<cStr.length;j++){
if(cTemp==cStr[j]){
bTemp = true;
break;
}
}
if(!bTemp) return false;
}
return true;
}
/**
*<br>方法说明:判断是否是闰年
*<br>输入参数:int iPara。要判断的年份
*<br>返回类型:boolean。如果是闰年返回true,否则返回false
*/
public boolean chickDay(int iPara){
return iPara%100==0&&iPara%4==0;
}
/**
*<br>方法说明:检查日期格式是否正确
*<br>输入参数:String sPara。要检查的日期字符
*<br>返回类型:int。0 日期格式正确,-1 月或这日不合要求, -2 年月日格式不正确
*/
public int chickData(String sPara){
@SuppressWarnings("unused")
boolean bTemp = false;
//所输入日期长度不正确
if(sPara.length()!=10) return -2;
//获取年
String sYear = sPara.substring(0,4);
//判断年是否为数字
if(!isNumber(sYear)) return -2;
//获取月份
String sMonth = sPara.substring(5,7);
//判断月份是否为数字
if(!isNumber(sMonth)) return -2;
//获取日
String sDay = sPara.substring(8,10);
//判断日是否为数字
if(!isNumber(sDay)) return -2;
//将年、月、日转换为数字
int iYear = Integer.parseInt(sYear);
int iMon = Integer.parseInt(sMonth);
int iDay = Integer.parseInt(sDay);
if(iMon>12) return -1;
//闰年二月处理
if(iMon==2&&chickDay(iYear)){
if(iDay>29) return 2;
}else{
if(iDay>iMonth[iMon-1]) return -1;
}
return 0;
}
/**
*<br>方法说明:主方法,测试用
*<br>输入参数:
*<br>返回类型:
*/
public static void main(String[] arges){
myArray mA = new myArray();
//校验邮件地址
boolean bMail = mA.isMail("tom@163.com");
System.out.println("1 bMail is "+bMail);
bMail = mA.isMail("tom@163com");
System.out.println("2 bMail is "+bMail);
//演示是否是数字
boolean bIsNum = mA.isNumber("1234");
System.out.println("1:bIsNum="+bIsNum);
bIsNum = mA.isNumber("123r4");
System.out.println("2:bIsNum="+bIsNum);
//演示是否是英文字符
boolean bIsStr = mA.isString("wer");
System.out.println("1:bIsStr="+bIsStr);
bIsStr = mA.isString("wer3");
System.out.println("2:bIsStr="+bIsStr);
//演示检查日期
int iIsTime = mA.chickData("2003-12-98");
System.out.println("1:iIsTime="+iIsTime);
iIsTime = mA.chickData("2003-111-08");
System.out.println("2:iIsTime="+iIsTime);
iIsTime = mA.chickData("2003-10-08");
System.out.println("3:iIsTime="+iIsTime);
iIsTime = mA.chickData("2000-02-30");
System.out.println("4:iIsTime="+iIsTime);
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。