用户输入生日计算年龄
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Scanner; public class shengri { public static void main(String[] args) { SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); Scanner s=new Scanner(System.in); System.out.println("请输入你的生日"); String str=s.next(); try { Date birth=sdf.parse(str); Calendar c=Calendar.getInstance(); c.setTime(birth); Calendar now=Calendar.getInstance(); int yearnow=now.get(Calendar.YEAR); int monthNow = now.get(Calendar.MONTH) + 1; int daynow =now.get(Calendar.DAY_OF_MONTH); int yearBirth = c.get(Calendar.YEAR); int monthBirth = c.get(Calendar.MONTH) + 1; int dayBirth = c.get(Calendar.DAY_OF_MONTH); int age = yearnow - yearBirth; if (monthNow <= monthBirth) { if (monthNow == monthBirth) { if (daynow < dayBirth) { age--; } } else { age--; } } System.out.println("你的年龄是:"+age); } catch (ParseException e) { e.printStackTrace(); } } }