📅  最后修改于: 2023-12-03 14:49:54.485000             🧑  作者: Mango
本文介绍了如何使用 Java 编程语言来创建一个小程序的日历程序。该程序可以用于显示日历并在其中添加和编辑事件。
在开始编写程序之前,请确保已经安装了 Java 开发环境,并熟悉基本的 Java 编程知识。
首先,创建一个新的 Maven 项目,并按照下面的结构组织代码文件:
.
├── src
│ ├── main
│ │ ├── java
│ │ │ └── com
│ │ │ └── example
│ │ │ ├── model
│ │ │ │ └── Event.java
│ │ │ ├── util
│ │ │ │ └── CalendarUtil.java
│ │ │ └── App.java
│ │ └── resources
│ └── test
│ └── java
└── pom.xml
package com.example.model;
import java.time.LocalDate;
public class Event {
private LocalDate date;
private String description;
public Event(LocalDate date, String description) {
this.date = date;
this.description = description;
}
// getters and setters
}
package com.example.util;
import java.time.DayOfWeek;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
public class CalendarUtil {
public static List<LocalDate> getDatesInMonth(int year, int month) {
List<LocalDate> dates = new ArrayList<>();
LocalDate start = LocalDate.of(year, month, 1);
LocalDate end = start.plusMonths(1).minusDays(1);
LocalDate date = start;
while (!date.isAfter(end)) {
dates.add(date);
date = date.plusDays(1);
}
return dates;
}
public static boolean isWeekend(LocalDate date) {
DayOfWeek dayOfWeek = date.getDayOfWeek();
return dayOfWeek == DayOfWeek.SATURDAY || dayOfWeek == DayOfWeek.SUNDAY;
}
}
package com.example;
import com.example.model.Event;
import com.example.util.CalendarUtil;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
public class App {
public static void main(String[] args) {
int year = 2022;
int month = 1;
// 获取指定月份的日期列表
List<LocalDate> dates = CalendarUtil.getDatesInMonth(year, month);
// 创建事件列表
List<Event> events = new ArrayList<>();
events.add(new Event(LocalDate.of(2022, 1, 1), "元旦"));
events.add(new Event(LocalDate.of(2022, 1, 14), "春节"));
for (LocalDate date : dates) {
System.out.printf("%2d ", date.getDayOfMonth());
// 判断是否为周末
if (CalendarUtil.isWeekend(date)) {
System.out.print("*");
} else {
boolean hasEvent = false;
// 查找事件
for (Event event : events) {
if (event.getDate().isEqual(date)) {
System.out.print(event.getDescription());
hasEvent = true;
break;
}
}
if (!hasEvent) {
System.out.print(" ");
}
}
System.out.println();
}
}
}
mvn compile
mvn exec:java -Dexec.mainClass="com.example.App"
以下是示例程序的运行结果:
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
在日历中,数字表示日期,星号表示周末,其他字符表示事件。
通过本文,你学习了如何使用 Java 编程语言创建一个小程序的日历程序。你了解了如何使用 Java 的日期和时间库来处理日期和时间,并且学会了如何使用循环和条件语句来生成日历并在其中添加事件。希望本文对你有所帮助!
以上就是使用小程序的日历 Java 程序的介绍,希望对你的编程学习有所帮助!