java 判断闰年

题目:

     在l.jsp 中,设置一个表单,可以输入年份,提交到另外一个action进行计算,
如果算出来是闰年,那么就跳转到a1.jsp(显示闰年),如果是平年就跳转到a2.jsp(显示平年)。

要求:需要把计算是否闰年的算法,封装到一个工具类Year中isLeap方法中。

第一步:创建1.jsp页面,并跳到action.jsp

<form action="action.jsp" method="post">
请输入年份:<input type="text" name='txtyear' >
<input type='submit' name='btn'>
</form>

如下图:

第二步:封装year工具类

创建一个class类,取名year

 

打一个属性和方法。

 //属性

private int year;

public int getYear() {
return year;
}

public void setYear(int year) {
this.year = year;
}
//方法
public boolean runnian(){

//1、第一种方法:让人看得懂的

  if(year%4==0&& year%100!=0 ||year%400==0){
     return true;
    }else{
     return false;
    }

//第二种方法:三元表达式(看起来很装逼的)

//return ((year%4==0&& year%100!=0 ||year%400==0)?true:false);
}

第三步:创建一个action.jsp页面

代码如下:

第一种方法:题目的答案

<%
//第一步:
//参数的收集
String year=request.getParameter("txtyear");
//转换为整型
int d=Integer.parseInt(year);

year y=new year();//实例化一个对象
y.setYear(d);//把得到的d参数放到y中

 if(y.runnian()){//放到runnian方法中计算
response.sendRedirect("3.jsp");//正确就转到3.jsp中
}else{
response.sendRedirect("2.jsp");//错误就转到2.jsp中

%>

第二种方法:题目的升级,将2个输出页面合并为一个

<%
//第一步
//参数的收集
String year=request.getParameter("txtyear");
//转换为整型
int d=Integer.parseInt(year);

//第二步:业务逻辑的处理以及计算
year y=new year();
y.setYear(d);
boolean leap=y.runnian();

//第三步:封装结果集,以及跳转到前端页面显示结果
if(leap){
request.setAttribute("result", "闰年");
}
else{
request.setAttribute("result", "平年");
//存放你显示的结果
}
request.getRequestDispatcher("2.jsp").forward(request,response);
//跳转到2.jsp页面显示出来
%>

第四步:创建一个2.jsp页面

完成!

返回到1.jsp执行代码

显示结果

2018年 6月12日  下午16:00

猜你喜欢

转载自www.cnblogs.com/guochangxin/p/9173514.html