java实现输入年份判断在哪一天(正则表达式待改进)
2017-04-18 22:06
676 查看
import java.util.Scanner; public class runYear { public static void main(String[] args) { // TODO Auto-generated method stub // 年份格式:yyyy-mm-dd, @SuppressWarnings("resource") Scanner scan = new Scanner(System.in); while(scan.hasNext()){ String str = scan.nextLine(); String regex = "[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}"; if(str.matches(regex)){ System.out.println(isRunYear(str)); }else{ System.out.println("格式错误,请重新输入!"); } } } private static int isRunYear(String yMD) { // TODO Auto-generated method stub String[] str = yMD.split("\\-"); int year = Integer.parseInt(str[0]); int month = Integer.parseInt(str[1]); int day = Integer.parseInt(str[2]); System.out.println(year + " "+month +" "+ day); int[] runYear = new int[]{31,29,31,30,31,30,31,31,30,31,30,31}; int[] noRunYear = new int[]{31,28,31,30,31,30,31,31,30,31,30,31}; int result = 0; if(isN(year)){ for(int i=0;i<month-1;i++){ result += runYear[i]; } result += day; }else{ for(int i=0;i<month;i++){ result += noRunYear[i]; } result += day; } return result; } private static boolean isN(int year) { // TODO Auto-generated method stub if (year % 4 == 0)//年份能用4整除 return true; else return false; } }
相关文章推荐
- @V@ java代码笔记2010-06-12:java控制台输入各类型类实现;以及判断输入字符串里面是否有数字的两种方法:方法1:转换成字符数组;方法2:正则表达式。
- Java正则表达式实现web端输入验证
- java利用正则表达式判断输入的日期格式为yyyy/MM/dd
- Java 用正则表达式判断输入的字符串是否为手机号码
- 用java实现输入某年某月某日,判断这一天是这一年的第几天?
- java实现输入某年某月某日,判断这一天是这一年的第几天?
- 用java实现简单的email正则表达式判断
- Java正则表达式判断输入的是否为数字
- Java用正则表达式判断输入的电话号码格式是否正确
- 用java实现简单的email正则表达式判断
- Qt通过QRegExp类来实现输入的有效性判断与正则表达式的学习
- java正则表达式判断输入内容
- java实现正则表达式判断日期
- Java用正则表达式判断输入的电话号码格式是否正确
- java基于正则表达式实现时间日期的常用判断操作实例
- iOS开发笔记:实现对手机号、邮箱输入格式的判断(正则表达式)
- 正则表达式_Java_SE_C++_简单题_判断输入的日期是否是正确的
- Java正则表达式实现web端输入验证
- Java 中文本组件MQDocument文档:采用正则表达式来判断输入是否合法
- 我想得到文本框中输入的三位的整数,用java的正则表达式怎么实现啊?