import org.junit.Test; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * @author ceshi * @Title: JunitAge * @ProjectName ceshi * @Description: TODO * @date 2018/6/2721:00 */ public class JunitAge { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); @Test public void testAge()throws Exception{ int age = getAge(format.parse("1993-06-27")); System.out.println(age); } //由出生日期获得年龄 public int getAge(Date birthDay) throws Exception { int age = 0; Calendar cal = Calendar.getInstance(); if (cal.before(birthDay)) { return age; } int yearNow = cal.get(Calendar.YEAR); int monthNow = cal.get(Calendar.MONTH); int dayNow = cal.get(Calendar.DAY_OF_MONTH); cal.setTime(birthDay); int yearBirth = cal.get(Calendar.YEAR); int monthBirth = cal.get(Calendar.MONTH); int dayBirth = cal.get(Calendar.DAY_OF_MONTH); //年相减 age = yearNow - yearBirth; //判断月份 if (monthNow <= monthBirth) { if (monthNow == monthBirth) { //判断天 if (dayNow < dayBirth){ age--; } }else{ age--; } } return age; } }