JAVA中判断是否为闰年的条件是什么_Java判断是否为闰年
所谓闰年,就是指 2 月有 29 天的那一年。闰年同时满足以下条件:
● 年份能被 4 整除。
●年份若是 100 的整数倍,须被 400 整除,否则是平年。
例如,1900 年能被 4 整除,但是因为其是 100 的整数倍,却不能被 400 整除,所以是平年;而 2000 年就是闰年;1904 年和 2004 年、2008 年等直接能被 4 整除且不能被 100 整除,都是闰年;2014 是平年。
下面综合本章学习的知识来编写一个判断闰年的案例,其主要功能如下:
●判断用户输入的年份是不是闰年。
●根据年份和月份输出某年某月的天数。
实现步骤分为以下几步:
(1) 新建一个类并在该类中导入需要的 java.util.Scanner 类,同时需要创建该类的入口方法 main(),其实现代码如下import java.util.Scanner;
public class Test27
{
public static void main(String[] args)
{
// 在这里编写其他代码
}
}
(2) 在 main() 方法中编写 Java 代码,获取用户输入的年份和月份,其实现代码如下:Scanner sc=new Scanner(System.in);
System.out.println("请输入年份(注: 必须大于 1990 年):");
int year=sc.nextInt();
System.out.println("请输入月份:");
int month=sc.nextInt();
(3) 根据用户输入的年份,判断该年份是闰年还是平年,其实现代码如下:boolean isRen;
if((year%4==0&&year%100!=0)||(year%400==0))
{
System.out.println(year+"闰年");
isRen=true;
}
else
{
System.out.println(year+"平年");
isRen=false;
}
(4) 根据用户输入的月份,判断该月的天数,其实现代码如下:int day=0;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day=31;
break;
case 4:
case 6:
case 9:
case 11:
day=30;
break;
default:
if(isRen)
{
day=29;
}
else
{
day=28;
}
break;
}
System.out.println(year+"年"+month+"月共有"+day+"天");
(5) 该程序代码执行结果如下所示:请输入年份(注: 必须大于 1990 年):
2018
请输入月份:
2
2018平年
2018年2月共有28天
再次运行main方法请输入年份(注: 必须大于 1990 年):
2000
请输入月份:
2
2000闰年
2000年2月共有29天
完整代码import java.util.Scanner;
public class Test27 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
System.out.println("请输入年份(注: 必须大于 1990 年):");
int year=sc.nextInt();
System.out.println("请输入月份:");
int month=sc.nextInt();
boolean isRen;
if((year%4==0&&year%100!=0)||(year%400==0))
{
System.out.println(year+"闰年");
isRen=true;
}
else
{
System.out.println(year+"平年");
isRen=false;
}
int day=0;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day=31;
break;
case 4:
case 6:
case 9:
case 11:
day=30;
break;
default:
if(isRen)
{
day=29;
}
else
{
day=28;
}
break;
}
System.out.println(year+"年"+month+"月共有"+day+"天");
}
}
JAVA中判断是否为闰年的条件是什么_Java判断是否为闰年相关推荐
- [转载] Java中如何引用另一个类里的集合_Java工程师面试题整理
参考链接: 在Java中将预定义的类名用作类或变量名 花了一星期把学过的都整理一遍 尽量易懂,从基础到框架 最新版大厂面经汇总出炉,持续更新中 汇总完了上传网盘,设计到后端架构师的一切知识 如果没更新 ...
- java中存在对多个对象加锁的情况_Java对象锁和类锁全面解析(多线程synchronized关键字)...
最近工作有用到一些多线程的东西,之前吧,有用到synchronized同步块,不过是别人怎么用就跟着用,并没有搞清楚锁的概念.最近也是遇到一些问题,不搞清楚锁的概念,很容易碰壁,甚至有些时候自己连用没 ...
- Java中的byte类型是有符号的吗_JAVA中byte类型的介绍。 谢谢
展开全部 Java也提供62616964757a686964616fe59b9ee7ad9431333431366265了一个byte数据类型,并且是基本类型.java byte是做为最小的数字来处理 ...
- java 前置零_程序员面试必考题(二十二):Java中的前置条件和后置条件
转载自微信公众账号:开点工作室(ID:kaidiancs) Java程序中,程序员可以使用前置条件与后置条件,来控制是否执行方法及判断方法是否正确执行. 前置条件(precondition)是一条条件 ...
- Java中List集合过滤出符合条件的List元素集合
在项目开发的过程中,我们经常会对List集合进行按条件的过滤,筛选出我们想要的结果或者是符合项目需求的数据.比如:我们有一批学生对象,每个学生都有自己的年龄属性,但是我们想要筛选出这一批学生中年龄为2 ...
- java 三元 代替 if_关于性能:Java中的三元运算符比“ if”条件快吗?
本问题已经有最佳答案,请猛点这里访问. 我容易出现"如果条件综合症",这意味着我倾向于一直使用if条件. 我很少使用三元运算符. 例如: //I like to do this: ...
- JAVA中计算五子棋平局的算法_输入五子棋棋盘判断输赢或平局—程序设计(C语言)...
输入五子棋棋盘判断输赢或平局-程序设计(C语言) 输入五子棋棋盘判断输赢或平局-程序设计(C语言) 输入五子棋棋盘判断输赢或平局-程序设计(C语言) ??做这道题实在没有思路参考了这位作者的代码: h ...
- Java 中多态的概念以及前提条件
多态的概念 * 一个事物在不同时刻的体现(堆内存中对象形式) * 多态的前提条件: * 1)必须有继承关系(继承的好处第三点作为多态的前提条件) * 如果没有继承谈不上多态 * 2) ...
- java中主函数抛出的异常怎么解决_java – 从递归函数中抛出异常
我为一个更大的应用程序构建了一个库/模块,它从函数中抛出异常.如果找不到文件或文件包含错误格式,则抛出Exeption. 该方法看起来像: Shape parse(String path) throw ...
最新文章
- 200多位专家热议“智慧城市” 建议尽快完善标准体系
- 论大脑的运行-万有引力模型
- Java 线程同步组件 CountDownLatch 与 CyclicBarrier 原理分析
- default argument given of parameter 的问题
- boost::binary_search相关的测试程序
- set python_使用dict和set
- jdbc java连接oracle_java连接oracle jdbc连接
- 开红数显示服务器为空,网维大师常见问题:图标空白或红号问号
- linux内核学习资料总结
- nginx 配置外网域名跳转到内网地址加端口的教程
- Android 视频压缩
- MySQL高级SQL语句
- OpenWRT - Makefile:31: *** missing separator. Stop.
- gnutls_handshake() failed: A TLS fatal alert has been received
- 游戏里的小哥哥小姐姐都是怎么来的?
- Struts2 自定义拦截器
- linux修改用户描述的命令,Linux修改用户信息(usermod)
- OKEx货币对价格数量长度及精度
- 无辜被黑 我在北大青鸟的真实工作经历(转帖)
- JAVA日记之SpringAOP_XML配置与注解开发 ----喝最烈的酒.