JAVA编写简单的日历,输入日期即可查看日历

利用LocalDate输入年月日找出当月日历

直接上代码

    package gentleman.Controller;

    import java.time.LocalDate;
    import java.util.Scanner;

    public class Calendar {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入要查询的日期(年-月-日用-分隔开)");
            String input = sc.nextLine();
            String[] str = input.split("-");
            int year = Integer.parseInt(str[0]);
            int month = Integer.parseInt(str[1]);
            int day = Integer.parseInt(str[2]);
            LocalDate date = LocalDate.of(year, month, day); //将输入的数值创建一个LocalDate对象
            String time = year + "年" + month + "月的日历";
            date = date.minusDays(day - 1);       //不论输入的是几号,总是从第一天算起
            int value = date.getDayOfWeek().getValue();   //周一到周日对应1-7
            System.out.println("       " + time);
            System.out.println();
            System.out.println(" 周一  周二 周三 周四 周五 周六  周日");  //这里空格的排序根据个人来定,我这看起来这么排顺序能对上
            for (int i = 1; i < value; i++)
                System.out.print("     ");
            while (date.getMonth().getValue() == month) {       //如果这个月遍历完就停止
                if (date.getDayOfMonth() <= 10) {                 //排版需要
                    System.out.print("  " + date.getDayOfMonth() + " ");
                } else {
                    System.out.print("  " + date.getDayOfMonth());
                }
                if (date.getDayOfMonth() == day) {               //输入日期标注*重点
                    System.out.print("*");
                } else {
                    System.out.print(" ");
                }
                date = date.plusDays(1);                     //每次打印完就向后一天,无需管一个月是28天还是30,31天
                if (date.getDayOfWeek().getValue() == 1) {
                    System.out.println();
                }
            }
        }
    }

原文地址:https://www.cnblogs.com/xiaowangtongxue/p/10677728.html

时间: 2024-10-09 23:43:30

JAVA编写简单的日历,输入日期即可查看日历的相关文章

利用Java编写简单的WebService实例

使用Axis编写WebService比较简单,就我的理解,WebService的实现代码和编写Java代码其实没有什么区别,主要是将哪些Java类发布为WebService.下面是一个从编写测试例子到发布WebService,以及编写测试代码的过程介绍. 本例子的WebService提供了两个方法,分别是sayHello和sayHelloToPerson,第一个只是返回一个"Hello"字符串,没有参数,第二个函数接受一个字符串作为参数,返回"Hello 参数值",

java编写简单的累加程序

package demo; public class CommanParameter { public static void main(String args[]){ System.out.println("参数个数"+args.length);//输出参数的长度 int a,n=0; for(String arg:args){ a=Integer.parseInt(arg);//将输入的数据进行强制类型转化 n=n+a; } System.out.println(n); } }

制作可视化日历,输入日期得到当月 月历表

import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Scanner; /** * 制作可视化日历,输入日期得到当月 月历表 * */ public class CalendarDemo { public static voi

java编写输入一个数判断是否是回文数,所谓回文数比如121,1221,6778776

package com.hao947; import java.util.Scanner; public class demo5 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int x = 0; x = scanner.nextInt(); System.out.println("请输入一个4-8位的数"); int dig[] = new int[10]; i

Java编写的日期计算方法

自己用Java编写的时间获取类,目前应用在数据交换监控系统中,经测试可以正常使用. 提供以下功能: Time tt = new Time(); System.out.println("获取昨天日期:" + tt.getyd()); System.out.println("获取当天日期:" + tt.getNowTime("yyyy-MM-dd")); System.out.println("获取本周一日期:" + tt.get

java实现简单web服务器(分析+源代码)

在日常的开发中,我们用过很多开源的web服务器,例如tomcat.apache等等.现在我们自己实现一个简单的web服务器,基本的功能就是用户点击要访问的资源,服务器将资源发送到客户端的浏览器.为了简化操作,这里不考虑资源不存在等异常情况.web服务基于的是HTTP协议,用户在浏览器的地址栏输入要访问的地址,服务器如何得到该地址是个关键.先看下一般的HTTP请求和响应报文的一般格式: HTTP 请求报文 HTTP 响应报文 web服务器获取一个用户的连接时,会初始化一个线程和用户通信,代码如下:

【Java】使用switch 计算一个日期是当年的第几天

计算一个日期是当年的第几天 这是去年做的一个Java题目,老师当时说这段代码里的switch用的很好. 现在工作一年了,明显感觉当时还很稚嫩,那个时候考虑问题很简单, 现在遇到问题会想更多的方面,说到这里,真的要谢谢带我的经理, 这段时间真的学到很多东西,每天都是在解决问题,每天都能学到新东西, 短短几个月时间进步了好多. 1 import java.util.Scanner; 2 3 /** 4 * 计算一个日期是当年的第几天 5 */ 6 public class CountDays { 7

java基础知识(六)日期处理

一.日期处理类 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值.它也允许格式化和解析日期字符串.不过,这些函数的 API 不易于实现国际化.从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和解析日期字符串.Date 中的相应方法已废弃 1.Date package com; import java.util.Date; /** * Created by Admini

JAVA实现简单四则混合运算

JAVA实现简单四则混合运算,说明:该计算器支持实则混合运算,如 2*(3+1 )/ 4-3 *9+ 8/ 3*4- 5,则输出:-19.333332 需要说明的事括号必须是英文的.源码如下仅供学习: 运行后直接在Console里面敲然后回车即可 [1].[代码] [Java]代码 跳至 [1] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36