检查邮件地址是否合法
规则:
1234567@qq.com
mym_ail@sina.com
nimail@163.com
wodemail@yahoo.com.cn .cn .cn
@: 前 数字字母_ 个数不能少于1个
@: 后 数字字母 个数不能少于1个
. : 后面 字母
public class RegexDemo2 {
public static void main(String[] args) {
checkMail();
}
public static void checkMail(){
String email ="abc123@sina.com";
boolean b = email.matches("[a-zA-Z0-9_]+@[0-9a-z]+(\\.[a-z]+)+");
System.out.println(b);
}
}
日期对象案例
案例1 计算自己活了多少天
需求 键盘输入自己的生日 例如 1997-08-15
如果输入的日期大于当前日期 提示您还没有出生
如果输入正确 给出 您已出生##天
案例2
输入年份 计算改年份是否是闰年
计算闰年 利用日期对象计算闰年Calendar
public class DateTest {
public static void main(String[] args) throws ParseException {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入生日 XXXX-XX-XX");
String dateString = scanner.next();
// 字符串类型 转换为日期类型
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
//生日
Date birthDay =dateFormat.parse(dateString);
// 毫秒值
long birthTime = birthDay.getTime();
// 当前的日期
Date curDate = new Date();
// 当前的毫秒数
long curTime = curDate.getTime();
// 判断
if(birthTime > curTime){
System.err.println("您还没出生呢");
}else{
long inv = curTime - birthTime;
int day = (int) (inv/1000/60/60/24);
System.out.println("您已出生:"+day+"天");
}
}
}
/*
* 闰年计算
* 2000 3000
* 高级的算法: 日历设置到指定年份的3月1日,add向前偏移1天,获取天数,29闰年
*/
public class LeapYear {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner=new Scanner(System.in);
System.out.println("请输入年份:");
int n=scanner.nextInt();
leapYear(n);//方法一
leapYear2(n);//方法二
}
public static void leapYear(int n){
//设定时间
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.YEAR, n);
calendar.set(Calendar.MONTH,1);//2月
Date date=calendar.getTime();
calendar.set(Calendar.MONTH,2);//3月
Date date2=calendar.getTime();
//获取2月份天数
long day=(date2.getTime()-date.getTime())/1000/60/60/24;
if(day>28){
System.out.println("闰年");
}else{
System.out.println("平年");
}
}
public static void leapYear2(int n){
//设定时间
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.YEAR, n);
calendar.set(Calendar.MONTH,2);
int date=calendar.get(Calendar.DAY_OF_YEAR);
//获取2月份天数
if(date==61){
System.out.println("闰年");
}else{
System.out.println("平年");
}
}
}