我是靠谱客的博主 害羞眼睛,最近开发中收集的这篇文章主要介绍日历Java联系使用Java制作一个日历(Java基础练习),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

使用Java制作一个日历(Java基础练习)

使用Java基础语言编写日历:

​ 需求:输入年份控制台输出当年对应的日历;

​ 具体步骤见代码:

​ 测试类:

package JavaSE;
/*日历测试类*/
/**
 * 需求:键盘录入任意一个年份,在控制台输出对应的日历
 */
import java.text.ParseException;
import java.util.Scanner;
public class CalendarDemo {
    public static void main(String[] args) throws ParseException {
        Scanner scan=new Scanner(System.in);//创建扫描器
        Calendars rili=new Calendars();//声明功能类
        System.out.print("请输入要查询的年份:");//接收年份
        int year=scan.nextInt();//接收用户输入的数值
        int pos=rili.getDay(year);//根据输入的年份,确定该年份的某一天是星期几
        System.out.println("=============="+year+"年================");
        /*打印月份及星期*/
        for (int month=1;month<=12;month++) {
            rili.PrintWeek(month);//调用打印星期的方法
            /*遍历星期并换行*/
            for(int i=1;i<pos%7;i++){
                System.out.print("t");
            }
            /*打印天数*/
            for (int day=1;day<=rili.getDays(year,month);day++){
                System.out.print(day+"t");//打印天数并空开间隔保持和星期对其
                //换行
                if(pos++%7==0){
                    System.out.println();//天数换行
                }
            }
            System.out.println();//月份换行
        }


    }
}

功能类:

package JavaSE;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Calendars {
    /*打印星期*/
    public void PrintWeek(int month){
        System.out.println("=============="+month+"月================");
        String weeks[]={"一t","二t","三t","四t","五t","六t","日t"};
        //循环遍历输出数组(输出周一到周日)
        for (int i=0;i<= weeks.length-1;i++){
            System.out.print(weeks[i]);
        }

        System.out.println();
    }

    /**
     * 打印日历
     * 根据输入的年份,确定该年份的1月1日时星期几
     */
   public int getDay(int year) throws ParseException {
       //获取日历对象
       Calendar c=Calendar.getInstance();
       //日期格式化对象
       SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
       Date pos_data=sdf.parse(year+"-01-01");
       c.setTime(pos_data);
       return c.get(Calendar.DAY_OF_WEEK)-1;
    }
    /*判断不同年份月份天数*/
    public int getDays(int year,int month) {
       int days=0;
       switch(month){
           case 1:
           case 3:
           case 5:
           case 7:
           case 8:
           case 10:
           case 12:
               days=31;
               break;
           case 2:
               if(year%4==0&&year%100!=0||year/40==0){
                   days=29;
               }else {
                   days=28;
               }
               break;
           case 4:
           case 6:
           case 9:
           case 11:
               days=30;
               break;
       }
       return days;
    }
}

在这里插入图片描述

最后

以上就是害羞眼睛为你收集整理的日历Java联系使用Java制作一个日历(Java基础练习)的全部内容,希望文章能够帮你解决日历Java联系使用Java制作一个日历(Java基础练习)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部