java代码计算出生日期 java根据日期计算年龄

java编写一个简单的输入生日计算下一个生日时间的代码?import java.util.Calendar;
import java.util.Scanner;
import java.util.concurrent.TimeUnit;
/**
* Title: Test03.javabr
* Description:
*
* @author 王凯芳
* @date 2020年3月5日 下午6:03:04
* @version 1.0
*
* @request 编写一个方法能计算任何一个人今天离他最近下一次生日还有多少天java代码计算出生日期,然后在主方法(main方法)中输入你的出生年月日 , 调用该方法的计算结果并输出信息“某某同学离自己最近下一次生日x天” 。
*/
public class Test03 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的姓名:");
String name = sc.nextLine();
【java代码计算出生日期 java根据日期计算年龄】System.out.println("请输入你的生日,格式为(2000/01/01):");
String line = sc.nextLine();
String[] strs = line.split("/");
if (strs.length == 3) {
int days = getDays(strs[0], strs[1], strs[2]);
if (days == 0) {
System.out.println(String.format("%s 同学,今天是你的生日,祝你生日快乐(#^.^#)", name, days));
} else {
System.out.println(String.format("%s 同学离自己最近下一次生日%d天 。", name, days));
}
} else {
System.out.println("生日输入不正确java代码计算出生日期!请按格式输入 。");
}
sc.close();
}
/**
* 获取最近一次生日天数
*
* @param year
* @param month
* @param day
* @return
*/
public static int getDays(String year, String month, String day) {
Calendar now = Calendar.getInstance();
now.set(Calendar.HOUR_OF_DAY, 0);
now.set(Calendar.MINUTE, 0);
now.set(Calendar.SECOND, 0);
now.set(Calendar.MILLISECOND, 0);
int now_year = now.get(Calendar.YEAR);
Calendar birthday = Calendar.getInstance();
birthday.set(Calendar.YEAR, now_year);
birthday.set(Calendar.MONTH, Integer.parseInt(month) - 1);
birthday.set(Calendar.DAY_OF_MONTH, Integer.parseInt(day));
birthday.set(Calendar.HOUR_OF_DAY, 0);
birthday.set(Calendar.MINUTE, 0);
birthday.set(Calendar.SECOND, 0);
birthday.set(Calendar.MILLISECOND, 0);
long diff = now.getTimeInMillis() - birthday.getTimeInMillis();
if (diff == 0) {
return 0;
} else if (diff0) {
long diffDays = TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS);
return Math.abs((int) diffDays);
} else {
birthday.add(Calendar.YEAR, 1);
long diffMi = birthday.getTimeInMillis() - now.getTimeInMillis();
long diffDays = TimeUnit.DAYS.convert(diffMi, TimeUnit.MILLISECONDS);
return (int) diffDays;
}
}
}
Java:计算出生到现在多少天代码//计算自己活了多少天
package programexam;// programexam需要修改下
import java.util.Date;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
//long型的数据保存日期 , 距离1970年一月一日的0分0秒的毫秒数
public class Birthday {//这里是类的名字
publicstatic void main(String[] args) throws ParseException {
Date now = new Date();
DateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
Date befor = dateFormat1.parse("1992-11-11");
long day1 = System.currentTimeMillis()/1000/60/60/24;
long day2 = befor.getTime()/1000/60/60/24;
System.out.println(day1-day2);
System.out.println(now);
System.out.println(befor);
}
}
用Java中相关的api实现:算出你出生多少天了?import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class CalcYourBirthDays {
static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
public static void main(String[] args) {
String birthday = "1992-07-10"; //出生年月日
try {
calcTotalDays(birthday);
} catch (Exception e) {
System.out.println(e);
}
}
public static int calcTotalDays(String birthday) throws Exception{
Date now = new Date();
long nowTime = now.getTime();
BigDecimal totalDays = BigDecimal.ZERO;
try {
Date birth = sdf.parse(birthday);
long birTime = birth.getTime();
long diff = nowTime-birTime;
BigDecimal difdec = new BigDecimal(diff);
BigDecimal dayNum = new BigDecimal(24*3600*1000);
totalDays = difdec.divide(dayNum, BigDecimal.ROUND_HALF_UP);
System.out.println("您已出生:" totalDays "天");
System.out.println("您今年" totalDays.divide(new BigDecimal(365), BigDecimal.ROUND_HALF_UP) "岁");
} catch (ParseException e) {
throw new Exception("-------------格式转换异常:" e);
}
return 0;
}
}
java新手写的测试自己出生了多少天给java代码计算出生日期你提供如下代码来实现java代码计算出生日期:
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Scanner;
/**
*
* @Chapter:计算自己出生java代码计算出生日期的天数
* @author ControlPower
* @version 1.7
* @data
* @remarks
* CtrlShiftf 格式化代码
* java-Code Style -Code Templates
* AltShiftJ 题目注释
*/
public class s5 {
public static void main(String[] args) {
GregorianCalendar gcal = new GregorianCalendar();
Calendar cal = Calendar.getInstance();
int sum = 0;
System.out.print("请输入出生年:");
int year = new Scanner(System.in).nextInt();
System.out.print("请输入出生月:");
int month = new Scanner(System.in).nextInt();
System.out.print("请输入出生日:");
int day = new Scanner(System.in).nextInt();
gcal.set(year, month - 1, day);//减一
String[] week = {"","星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
String str = String.format("您java代码计算出生日期的出生日期是:%d年%d月%d日", gcal.get(Calendar.YEAR),gcal.get(Calendar.MONTH)1,gcal.get(Calendar.DAY_OF_MONTH));
str= ""week[gcal.get(Calendar.DAY_OF_WEEK)];
System.out.println(str);
if(gcal.isLeapYear(gcal.get(Calendar.YEAR))) {
sum= 366 - gcal.get(Calendar.DAY_OF_YEAR);
}else {
sum= 365 - gcal.get(Calendar.DAY_OF_YEAR);
}
for (int i = gcal.get(Calendar.YEAR)1; ical.get(Calendar.YEAR); i) {
if(gcal.isLeapYear(i)) {
sum= 366;
}else {
sum= 365;
}
}
sum= cal.get(Calendar.DAY_OF_YEAR);
System.out.println("您已经出生java代码计算出生日期了:"sum"天");
}
}
(用JAVA实现)请使用日期相关的api,控制台输入出生日期,计算出一个人出生了多少年?这个问题主要涉及日期的解析及时间分量的计算 。
思路:使用SimpleDateFormat将输入的字符串表示的日期解析为Date,再将Data转为Calendar,获取日期分类年份,然后与当前年份做差运算即可 。
代码如下:
代码实现
关于java代码计算出生日期和java根据日期计算年龄的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读