java学习日历输出(一)
2024-10-02 01:33:47
import java.text.DateFormatSymbols;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Locale; public class Main { /**
* 打印出日历表格
*/
public static void main(String[] args) { GregorianCalendar d = new GregorianCalendar();
int today = d.get(Calendar.DAY_OF_MONTH); //今天是当月的几号
int month = d.get(Calendar.MONTH); //现在是第几月(因为从0开始算所以得到的月份要加个1)
d.set(Calendar.DAY_OF_MONTH,1);//将d设置为这个月的第一天
int weekday = d.get(Calendar.DAY_OF_WEEK); int firstDayOfWeek = d.getFirstDayOfWeek(); int indent = 0;
while(weekday != firstDayOfWeek){
indent++;
d.add(Calendar.DAY_OF_MONTH,-1);
weekday = d.get(Calendar.DAY_OF_WEEK);
} String[] weekdayNames = new DateFormatSymbols().getShortWeekdays(); do{
System.out.printf("%4s", weekdayNames[weekday]);
d.add(Calendar.DAY_OF_MONTH, 1);
weekday = d.get(Calendar.DAY_OF_WEEK); }while(weekday != firstDayOfWeek); System.out.println(); for(int i = 1;i <= indent;i++){
System.out.print(" ");
}
d.set(Calendar.DAY_OF_MONTH, 1); do{
int day = d.get(Calendar.DAY_OF_MONTH);
System.out.printf("%3d",day);
if(day == today)System.out.print("*");
else System.out.print(" ");
d.add(Calendar.DAY_OF_MONTH, 1);
weekday = d.get(Calendar.DAY_OF_WEEK); if(weekday == firstDayOfWeek) System.out.println();
}while(d.get(Calendar.MONTH) == month); if(weekday != firstDayOfWeek) System.out.println();
} }
效果:
最新文章
- 标准盒子模型和IE盒子模型
- Oracle笔记2-数据库设计
- iOS 播放GIF动态图片!!!!!
- Web应用程序或者WinForm程序 调用 控制台应用程序及参数传递
- javascript对象转化为基本数据类型规则
- 如何用 Parse 和 Swift 搭建一个像 Instagram 那样的应用?(2)
- WPF常用数据绑定控件集合
- async:false同步请求,浏览器假死
- CAS SSO对手机应用支持的一种思路
- .NET获取机器信息
- IE兼容性标签和条件注释
- opencv中的vs框架中的Blob Tracking Tests的中文注释。
- 分享:纯 css 瀑布流 和 js 瀑布流
- Using PL/SQL APIs as Web Services
- Android之Lottie动画详解
- python 将本地目录暴露为http服务
- 使用docker-compose部署nginx
- MD5算法工具类
- Python---高级函数map, filter, zip, enumerate等的用法
- asp.net web api集成微信服务(使用Senparc微信SDK)- z