Java数组数据的操作之检查日期格式是否正确
程序源代码
/**
*
Title:数组数据的操作>
*@author author
*version 0.1
*/
public class myArray034
{
//初始化数组变量
char[] cNum = {'1','2','3','4','5','6','7','8','9','0'};
int[] iMonth={31,28,31,30,31,30,31,31,30,31,30,31};
/**
*
方法说明:判断是否是数字
*
输入参数:String sPara。 需要判断的字符串
*
返回类型:boolean。如果都是数字类型,返回true;否则返回false
*/
public boolean isNumber(String sPara){
int iPLength = sPara.length();
for(int i=0;i char cTemp = sPara.charAt(i); boolean bTemp = false; for(int j=0;j if(cTemp==cNum[j]){ bTemp = true; break; } } if(!bTemp) return false; } return true; } /** * * * */ public boolean chickDay(int iPara){ return iPara%100==0&&iPara%4==0; } /** * * * */ public int chickData(String sPara){ boolean bTemp = false; //所输入日期长度不正确 if(sPara.length()!=10)return -2; //获取年 String sYear = sPara.substring(0,4); //用方法substring截取sPara中从0开始至4结束时的字符串,并将其赋值给sYear; //判断年是否为数字 if(!isNumber(sYear))return -2; //获取月份 String sMonth = sPara.substring(5,7); //用方法substring截取sPara中从5开始至7结束时的字符串,并将其赋值给sMonth; //判断月份是否为数字 if(!isNumber(sMonth))return -2; // 获取日 String sDay = sPara.substring(8,10); //判断日是否为数字 if(isNumber(sDay))return -2; //将年,月,日转换为数字 int iYear = Integer.parseInt(sYear); //Integer.parseInt方法:作用将字符串参数作为有符号的十进制整数进行解析 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; } /** * * * */ public static void main(String[] arges){ myArray mA = new myArray(); System.out.println("0 日期格式正确,-1 月或这日不合要求, -2 年月日格式不正确 "); System.out.println("2003-12-89"); int iIsTime = mA.chickData("2003-12-89"); System.out.println("1:iIsTime="+iIsTime); System.out.println("2003-111-08"); iIsTime = mA.chickData("2003-111-08"); System.out.println("2:iIsTime="+iIsTime); System.out.println("2003-10-08"); iIsTime = mA.chickData("2003-10-08"); System.out.println("3:iIsTime="+iIsTime); System.out.println("2000-02-30"); iIsTime = mA.chickData("2000-02-30"); System.out.println("4:iIsTime="+iIsTime); } } 运行结果图:
方法说明:判断是否是闰年
输入参数:int iPara。要判断的年份
返回类型:boolean。如果是闰年返回true,否则返回false
方法说明:检查日期格式是否正确
输入参数:String sPara。要检查的日期字符
返回类型:int 0 日期格式正确,-1月或这日不合要求,-2年月日格式不正确
方法说明:主程序
输入参数:
返回类型