java万年历小程序

用java写个小小的万年历还是很简单的。

import java.util.Calendar;

/**
 * 万年历小程序
 * 
 * @author Administrator
 *
 */
public class Kalendar {
public void WanNianLi(int year,int month){
if (month > 0 && month < 13) {
// 根据日历类对象的方法,实例化一个当前的日历类对象
Calendar ca = Calendar.getInstance();
// 设置日历对象的年月日
ca.set(Calendar.YEAR, year);
ca.set(Calendar.MONTH, month - 1);// 月份只有12个
ca.set(Calendar.DATE, 1);


// 得到当前月份的最大值
int day = ca.getActualMaximum(Calendar.DATE);
// 得到本月中的第一天是星期几
int week = ca.get(Calendar.DAY_OF_WEEK);
int num= 0;// 一个计数变量


System.out.println("\n\t\t" + year + "年" + month + "月\n");
// 打印日历的星期
String str[] = { "日\t", "一\t", "二\t", "三\t", "四\t", "五\t", "六\t" };
for (int i = 0; i < str.length; i++) {
System.out.print(str[i]);
}
System.out.println("\n");
// 判断第一天对应的是星期几
while (num < week - 1) {
System.out.print("\t");
num++;
}
// 循环打印日历
for (int l = 1; l <= day; l++, num++) {
// 包含前面的空格,当有7个数时就换一行
if (num % 7 == 0) {
System.out.println();
}
System.out.print(l + "\t");// 打印号
}
} else {
System.out.println("月份请输入1至12,请勿超界");
}
}

}


来个测试类,测试一下

import java.util.Scanner;
public class KalendarTest {
public static void main(String[] args) {
Kalendar kalendar=new Kalendar();
Scanner sc=new Scanner(System.in);
System.out.println("*******万年历*******\n");
int a;
int b;
try {
System.out.println("请输入年份");
a = sc.nextInt();
System.out.println("请输入月份");
b = sc.nextInt();
kalendar.WanNianLi(a, b);
} catch (Exception e) {
System.out.println("年份和月份请输入整数");
}
}

}

ok了,适合新手和正在学基础的人们看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值