Java输入你一年份,判断是闰年还是平年

------ Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
/*
 * 本人是刚刚才接触java,这些是我学习尝试写的一些java代码。如果有错误的地方,还请指教。
 * 代码已经运行过,并且能够实现功能。
 * 我的一些系统配置:JDK使用的是1.7版本。开发工具eclipse。
 * 
 * 
 * 要求:用户输入一个年份,系统判断是不是闰年。结果打印输出。
 * 
 * 判断方法1:能被4整除但是不能被100整除,或者能被400整除的年份,就是闰年。
 * 
 * 判断方法2:通过Calendar中的方法,来获取这一年二月的的总的天数,如果是28就是平年,如果是29就是闰年。
 * 
 * 为了方便播客上发表,本次所有方法都写在一个类中。
 * 
 */

//创建一个包,用于存储程序
package code;
//这里导包就全部导入,因为需要输入Scanner和Calendar,也可以单个导入。
import java.util.*;

public class JudgeBissextile {

	
	public static void main(String[] args) {
		//	创建一个Scanner对象
		Scanner sc = new Scanner(System.in);
		System.out.println("----->输入年份:");
		int year = sc.nextInt();
		//第一种调用方式,直接在输出语句中完成全部操作,使用三目运算。
		System.out.println(year+(method_1(year)?"是闰年":"是平年"));
		//这个判断方式等同与上面一种判断方式,使用if-else语句。
		if(method_2(year))
			System.out.println(year +"是闰年");
		else
			System.out.println(year +"是平年");
	}
	
	/*
	 * 验证方法1:通过判断能被4整除但是不能被100整除,或者能被400整除的年份,来判断闰年。
	 * 传入参数:int year ,传入一个年份值。
	 * 返回值:返回值为boolean类型,当返回true时,为闰年,否则为平年。
	 * 
	 * 这里使用三目运算符运算,并且直接return返回值。	  
	 */
	public static boolean method_1(int year){
		return ((year%4==0 && year%100!=0) || year%400==0) ? true : false;
	}
	
	/*
	 * 验证方式2:通过获取这一年二月份的最大值,来判断是平年还是闰年。
	 * 传入参数:int year ,传入一个年份值
	 * 返回值:返回值为boolean类型,当返回true时,为闰年,否则为平年
	 * 
	 */
	public static boolean method_2(int year){
		//静态方法,获取Calendar的子类对象
		Calendar c = Calendar.getInstance();
		//调用set方法,设置时间到当前输入的年份的3月1日。
		//java的时间月份默认从0开始计算。只有0-11月。
		c.set(year, 2, 1);
		//将时间往前移动一天,就是2月份的最后一天,通过获取当前的值,就能确定二月份的最大值
		c.add(Calendar.DAY_OF_MONTH, -1);
		return (c.get(Calendar.DAY_OF_MONTH)==29) ? true : false;
		
	}
}


<span style="font-size:18px;"></span>
<img src="https://img-blog.csdn.net/20150109223005852" alt="" />


<a target=_blank target="_blank" href="http://download.csdn.net/detail/lmh820822/8346371">代码下载地址:</a>http://download.csdn.net/detail/lmh820822/8346371


  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值