Java 学者出国求学的总天数
//题目:
学者A去国外求学,假定离开祖国的日子为公元A年B月C日,返回的日子为
公元X年Y月Z日。请计算A出国求学的总天数(含离开和返回的当天)
import java.util.Scanner;@SuppressWarnings({"all"})
public class 类名 {public static boolean isRunNian(int year) { //leapyear 闰年boolean flag = false;if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {flag = true;}return flag;}public static int countDays(String newDate, String oldDate) {String regex = "\\D+"; //一个或多个非数字字符int sumdays = 0; //总计出国天数int year = 365; //初始化按 非闰年的天数int[] day = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};String[] oldArr = oldDate.split(regex); //字符串分割 年,月,日放数组里String[] newArr = newDate.split(regex);//Integer.parseInt() 把String转为int型int oldYear = Integer.parseInt(oldArr[0]); //split后 [0]存放年int newYear = Integer.parseInt(newArr[0]);int oldMonth = Integer.parseInt(oldArr[1]); //[1]存放月int newMonth = Integer.parseInt(newArr[1]);int oldDay = Integer.parseInt(oldArr[2]); //[2]存放日int newDay = Integer.parseInt(newArr[2]);System.out.println("old年" + oldYear + " old月" + oldMonth + " old日" + oldDay);System.out.println("now年" + newYear + " now月" + newMonth + " now日" + newDay);//注意有doldYear == newYear这种情况if (oldYear == newYear) {//判断闰年,来确定2月有多少天if (isRunNian(oldYear)) {day[1] = 29;}int sumdays1 = day[oldMonth - 1] - oldDay + 1;for (int j = oldMonth; j < 12; j++) {sumdays1 += day[j];}int sumdays2 = day[newMonth - 1] - newDay + 1;for (int j = newMonth; j < 12; j++) {sumdays2 += day[j];}return sumdays1 - sumdays2 + 1;}//下面for (int i = oldYear; i <= newYear; i++) {day[1] = 28;year = 365;if (isRunNian(i)) {day[1] = 29;year = 366;}if (i == oldYear) {sumdays = day[oldMonth - 1] - oldDay + 1; //for (int j = oldMonth; j < 12; j++) {sumdays += day[j];}} else if (i == newYear) {for (int j = 0; j < newMonth - 1; j++) {sumdays += day[j];}sumdays += newDay;} else {sumdays += year;}}return sumdays;}public static void main(String[] args) {String newString = "2022年8月26日";String oldString = "2022年3月21日";System.out.println("求学的天数是:" + countDays(newString, oldString));}
}
Java 学者出国求学的总天数相关推荐
- Java 获取一个月的总天数
//获取一个月天数 public static int getDaysOfMonth(Date date) {Calendar calendar = Calendar.getInstance();ca ...
- 计算当前时间距离元年一月一日的总天数,并显示现在是星期几
package create; import java.time.Month; import java.util.Scanner; public class GetTime{ public stati ...
- 4 给出一个月的总天数
4 给出一个月的总天数 编写程序,提示用户输入月份和年份,然后显示这个月的天数. 输入格式: 输入任意符合范围(1月12月)的月份和(1900年9999年)年份,且两个值之间空格分隔. 输出格式: 输 ...
- Java计算时间区间内工作日天数
Java计算时间区间内工作日天数,并去除放假日与周末重叠数据 实际生活中,国家法定假日可能与周六周日重叠,所以需要去重.对于放假补班的特殊情况,需要另外补充 实际生活中,国家法定假日可能与周六周日重叠 ...
- HDU1201求出生到18岁生日总天数
18岁生日 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...
- 分享五款java学习辅助工具,总有你用的上的~
想要学好java技术,除了自身的努力,辅助工具也不缺少,辅助工具可以帮助大家在今后的工作中可以提高工作效率,下面小编就来分享五款java学习辅助工具,总有你用的上的~ 五款java学习辅助工具: 1. ...
- java如何计算时间天数差,java计算两个时间相差天数的方法汇总
问题描述: 输入:两个日期 输出:两个日期相差的天数 具体代码实现 方法1: 通过calendar类的日期比较.注意:这里需要考虑一下: 日期是跨年份的,如一个是2012年,一个是2015年的 年份是 ...
- C语言入门题-计算到任意日期的总天数
7-1 计算到任意日期的总天数 (10分) 编程序实现:输入任意一个日期的年.月.日的值,求出从公元1年1月1日到该日期前一年的年末总共有多少天,到该日期前一个月的月末总共有多少天,到这一天总共有多少 ...
- 计算到达18岁生日所经过的总天数
Problem Description Gardon的18岁生日就要到了,他当然很开心,可是他突然想到一个问题,是不是每个人从出生开始,到达18岁生日时所经过的天数都是一样的呢?似乎并不全都是这样,所 ...
最新文章
- Django模板之jinja2模板和CSRF
- 苹果CEO乔布斯如何工作
- 微信朋友圈:应对春节千亿访问量背后的故事
- 2 获取对象 IDbDataAdapter 用于填充 DataSet 和更新数据源
- 对css float 浮动的学习心得
- 利用putty的pscp命令执行Linux服务器命令
- 传360以原彩虹QQ研发团队为班底拟强推IM
- 做中国女人难,做中国女装更难
- linux脚本done报错,很简单的脚本程序,总是报错
- Atitit.软件与编程语言中的锁机制原理attilax总结 1. 用途 (Db,业务数据加锁,并发操作加锁。	2 2. 锁得类型	3 2.1. 排它锁 “互斥锁 共享锁 乐观锁与悲观锁 乐观锁:
- 万年历插件软件测试,万年历的程序代码
- Spark生态之Alluxio学习15--alluxio性能分析和加速方式
- 抖音火爆表白小程序(C#语言实现)
- 如何检索综述类文献?
- 串口服务器的作用是什么?
- Vue3格式化Volar报错
- archlinux音量管理
- 欧拉角、四元数与旋转
- u大侠pe系统桌面计算机,更换winpe桌面壁纸的详细教程
- 【k哥爬虫普法】爬取数据是否一定构成不正当竞争?
热门文章
- 【我是学生,可以送我么】搭建树莓派4bJTAG调试平台jlink平替版
- 强大的看剧网站,持续更新中。。。
- 【ZJX-3A AC220V剪断销信号装置】
- 聚合数据火车票订票接口完成火车票订票流程(PHP)
- codefrces 1203 E. Boxers(贪心)
- 项目绩效考核为什么要定指标_为您的项目选择正确的指标
- 省常中模拟 day2
- 深圳python培训机构排名榜出炉
- 《Aspect-Category-Opinion-Sentiment Quadruple Extraction with Implicit Aspects and Opinions》论文笔记
- SQL语句---多表联查、改、删