java 判断日期周几_Java 输入一个日期,判断是星期几
package com.zwg.calweek;
import java.time.MonthDay;
import java.util.Scanner;
public class CalMain {
public static void main(String[] arge){
Scanner sc=new Scanner(System.in);
int year,month,day;
while(true){
System.out.println("我可以计算你输入的日期是星期几,请依次输入年月日");
System.out.println("请输入年份:");
year=sc.nextInt();
while(year<1900){
System.out.println("我还无法计算1900之前的日期");
System.out.println("请重新输入年:");
year=sc.nextInt();
}
System.out.println(CheckDay.isLeap(year));
System.out.println("请输入月份:");
month=sc.nextInt();
while(month>12||month<1){
System.out.println("月份输入错误,请重新输入:");
month=sc.nextInt();
}
System.out.println("请输入日:");
day=sc.nextInt();
while(!CheckDay.checkDay(year,month,day)){
day=sc.nextInt();
}
System.out.println("日期输入完毕,正在计算...");
FinalCal.finalCal(year, month, day);
}
}}
/*---------------------------------------------------------------------------*/
package com.zwg.calweek; public class CheckDay { public static boolean isLeap(int year){ boolean mark=false; if((year%4==0&&year%100!=0)||year%400==0) mark=true; return mark; } public static boolean checkDay(int year, int month,int day){ switch(month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: if(day<1||day>31) return false; break; case 4: case 6: case 9: case 11: if(day<1||day>30) return false; break; case 2: if(isLeap(year)){ if(day<1||day>29) { System.out.println(year+"年2月有29天"); return false; } } else { if(day<1||day>28) { System.out.println(year+"年2月有28天"); return false; } }break; default: System.out.println("Error! checkDay函数出错"); } return true; } }/*------------------------------------------------------------------------------------------*/
package com.zwg.calweek; public class FinalCal { public static void finalCal(int year,int month,int day){ /**1.计算该年与1900年间有几个闰年,有几个,就额外+几天; * 1904是第一个闰年; */ int y=year-1904,count=0; if(y>=0) count=y/4+1; int total; total=(year-1900)*365+calMonth(month-1)+day+count; int week=total%7; System.out.print(year+"年"+month+"月"+day+"日是星期"); switch(week){ case 1: System.out.println("一");break; case 2: System.out.println("二");break; case 3: System.out.println("三");break; case 4: System.out.println("四");break; case 5: System.out.println("五");break; case 6: System.out.println("六");break; case 7: System.out.println("日");break; default: System.out.println("error week"); } System.out.println(); } public static int calMonth(int month){ switch(month){ case 0:return 0; case 1:return 31; case 2:return 31+28; case 3:return 31+28+31; case 4:return 31+28+31+30; case 5:return 31+28+31+30+31; case 6:return 31+28+31+30+31+30; case 7:return 31+28+31+30+31+30+31; case 8:return 31+28+31+30+31+30+31+31; case 9:return 31+28+31+30+31+30+31+31+30; case 10:return 31+28+31+30+31+30+31+31+30+31; case 11:return 31+28+31+30+31+30+31+31+30+31+30; case 12:return 31+28+31+30+31+30+31+31+30+31+30+31; default: System.out.println("Error! calMonth"); return 0; } } }
java 判断日期周几_Java 输入一个日期,判断是星期几相关推荐
- 输入一个日期,显示下一天日期
输入一个日期,显示下一天日期 要求: 设计程序输入一个日期,显示下一天日期. 代码如下: import java.util.Scanner; public class nextDate{public ...
- java语言显示运算时间_JAVA语言之ACM日期计算:输入一个日期,格式如:2010 10 24 ,判断这一天是这一年中的第几天...
本文主要向大家介绍了JAVA语言之ACM日期计算:输入一个日期,格式如:2010 10 24 ,判断这一天是这一年中的第几天,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. ACM日期 ...
- C语言输入一个日期,计算这一天是周几
问题描述:输入一个日期,计算这一天是周几,假设年份和月份的天数是一定的,分别是360天和30天,并且已知一个日期. 首先,要解决一个问题,你要知道真正需要求的是什么. 对于这个题,我们要解决的是已知日 ...
- 【算法】在控制台输入一个日期,判断这个日期是这一年的第几天?
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;/*** @Cl ...
- 用java将输入的整数逆序输出_输入一个整数判断这个整数是几位数,并把这个整数逆序输出! | 学步园...
import java.util.Scanner; /** * * 问题:输入一个整数判断这个整数是几位数,并把这个整数逆序输出! * * @author Administrator * * 程序如下 ...
- java编程用户输入两个数字_编写一个Java应用程序,要求从键盘输入两个整数,计算这两个数据...,编写一个Java应用程序,要求从键盘输入一个数,判断该数是不...
导航:网站首页 > 编写一个Java应用程序,要求从键盘输入两个整数,计算这两个数据...,编写一个Java应用程序,要求从键盘输入一个数,判断该数是不 编写一个Java应用程序,要求从键盘输入 ...
- java编写程序_对输入的年月日_给出该天是该年的第多少天?_编写Java程序。当以年月日的格式输入一个日期时,输出该年是否是闰年,该月有几天,该日是星期几...
满意答案 控制不住的愤怒 2017.12.20 采纳率:59% 等级:9 已帮助:414人 public static void main(String[] args) throws Parse ...
- 从键盘输入一个日期,格式为yyyy-M-d 要求计算该日期与1949年10月1日距离多少天
/** 从键盘输入一个日期,格式为yyyy-M-d要求计算该日期与1949年10月1日距离多少天例如:用户输入了:1949-10-2程序输出:1用户输入了:1949-11-1程序输出:31 */ im ...
- c++输入一个整数判断是否为完全平方数_matlab判断一个整数是完全平方数
(C语言c++)判断一个数是否是 完全平方数的 整数倍 #include#includeint ispow(int x){ int& 用c编判断一个数是否是完全数 #include#in ...
最新文章
- 嵌入式程序员应知道的基本问题-C语言(zz)
- 企业组网安全如何保障?SDWAN提供怎样的安全服务?
- 修改mysql文件位置_如何修改mysql数据文件存储位置
- 使用Http协议访问网络--HttpClient
- ubuntu12 04下django安装略谈
- 百度关键词搜索量查询,百度,谷歌关键词查询工具
- 正确的握笔姿势,握笔的姿势非常的重要
- 很多次游戏的最后取胜实际上都有很强的偶然性
- 复现 ASPCMS企业建站系统Cookies欺骗漏洞
- 计算机辅助电话访问优势,电话访问的优点缺点、优势不足、局限性
- 删除Custom about:config即可轻松输入
- 5G基础及计算机网络参考模型
- 清华大学操作系统课程实验
- 计算机网络——基于IP多播的网络会议程序
- 什么时候重写equals方法
- python怎么解题_农夫过河问题 Python实现解题
- 三种方法Python读取文件指定行,来看看你用过没?
- python使用大数据分析师_Python+大数据分析师
- 升级到 ExtJS 5的错误解决方案
- A002、java环境搭建_第一个java程序
热门文章
- 《研磨设计模式》chap18 状态模式state(1)模式简介
- C++ Primer 5th笔记(chap 12 动态内存)智能指针概述
- 6. Qt 信号与信号槽(3)-QMetaObject
- go.sum中特殊hash如何计算
- 全网最强Python版《超级玛丽》小游戏,我还是你的马里奥嘛?
- unittest单元测试框架—基本实例
- load、loads、dump、dumps的区别
- `Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
- 05-密码学基础-RSA的介绍
- MTK for Google AttestationKey介绍