博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
复习Java时间相关类(案例:万年历)&Java面试题数据库如何优化&生活【记录一个咸鱼大学生三个月的奋进生活】010
阅读量:2059 次
发布时间:2019-04-29

本文共 3786 字,大约阅读时间需要 12 分钟。

记录一个咸鱼大学生三个月的奋进生活010

复习Java(时间相关类)

Util包中的Date日期类

Date 类表示日期和时间,提供操纵日期和时间各组成部分的方法,最佳应用之一就是获取系统当前时间。

Date类的构造方法:

Date() —— 使用系统日期创建 Date对象(常用)
Date(int y, int m, int d) —— 使用指定的年月日创建Date对象,但是因为有错误所以方法已过时
Date(long dt) —— 使用自 1970 年 1 月 1 日以后的指定毫秒数创建 Date对象(不常用)

Date类的常用方法:

after(Date d) —— 判断此日期是否在指定日期之后,返回一个布尔值
before(Date d) —— 判断此日期是否在指定日期之前,返回一个布尔值
getYear()、getMonth() … —— 获得当前实例的年份或其他信息,已过时
setYear()、setMonth() … —— 设置当前实例的年份或其他信息,已过时
toString() —— 把对象转换为String形式

Util包中的Calendar日历类

Calendar为日历类(抽象类)所以要这么实例化:Calendar c = Calendar . getInstance();

Calendar类的常用方法:

after(Calendar c) —— 判断此日期是否在指定日期之后,返回一个布尔值
before(Calendar c) —— 判断此日期是否在指定日期之前,返回一个布尔值
set(Calendar.Year , 2020) —— 设置该对象指定时间类型的值
get(Calendar.Year) —— 得到指定对象的指定时间类型的值
add(Calendar.Year, int val) —— 指定对象的指定时间类型进行值操作,val为正是增加,val为负是减少
toString() —— 把对象转换为String形式

Util包中的GregorianCalendar标准日历类

GregorianCalendar标准日历类,GregorianCalendar是Calendar的实现类,通常我们使用GregorianCalendar进行一些日期的处理。

GregorianCalendar类的构造方法:

GregorianCalendar() —— 用当前时间创建
GregorianCalendar(int Y, int M, int D) —— 用指定年月日创建
GregorianCalendar(int Y, int M, int D, int H, int MI) —— 用指定年月日时分创建
GregorianCalendar(int Y, int M, int D, int H, int MI,int S) —— 用指定年月日时分秒创建

GregorianCalendar类的常用方法:

Calendar日历类能使用的方法GregorianCalendar类基本上都能用,还多了个
isLeapYear(); —— 判断是否为闰年的方法

Util包中的SimpleDateFormat简单日期类

可以格式化日期,得到想要的格式,实例化:new SimpleDateFormat(yyyy-MM-dd hh:mm:ss);

SimpleDateFormat类的常用方法:

SimpleDateFormat(“y”).format(date) —— 返回对应的时间格式字符串,这个例子就是返回一个四位数年份
SimpleDateFormat(“yyyy-MM-dd”).parse(String str) —— 将str对象返回为Date对象(str必须是指定的当前实例的日期格式)
必须练习的例子(万年历):
当然万年历就是说一说,这里只展示后10年的日历怎么编写,弄懂之后想改成几年就几年,当时备注已经写得很清楚了相信大家能看懂。

import java.util.Calendar;import java.util.GregorianCalendar;// util包内的日历类测试,做日历public class Work20_datetestRili {
public static void main(String[] args) {
GregorianCalendar gc1 = new GregorianCalendar(2020,0,1); // 设定从20年之后十年的日历 GregorianCalendar gc = new GregorianCalendar(); // 实例化现在的日期 for(int i = 0 ; i < 10 ; i++) {
System.out.println("<-----------"+ gc1.get(Calendar.YEAR) + "年" +"----------->"); // 输出循环的年份 for(int j = 0 ; j < 12 ; j++) {
int today = gc.get(Calendar.DATE); // 用日历的get方法获得现在的日子 int month = gc.get(Calendar.MONTH); // 用日历的get方法获得现在的月份 int year = gc.get(Calendar.YEAR); // 用日历的get方法获得现在的年份 int month1 = gc1.get(Calendar.MONTH); // 用日历的get方法获得循环的月份 if(gc1.get(Calendar.YEAR) == year && gc1.get(Calendar.MONTH) == month) {
// 如果是今年的这个月那么就输出一行* System.out.println("**********"+ gc1.get(Calendar.YEAR) + "年" + (gc1.get(Calendar.MONTH) + 1)+ "月" +"**********"); } else {
System.out.println("=========="+ gc1.get(Calendar.YEAR) + "年" + (gc1.get(Calendar.MONTH) + 1)+ "月" +"=========="); } System.out.println(" 天 一 二 三 四 五 六"); for(int x = 0; x < gc1.get(Calendar.DAY_OF_WEEK) - 1; x++) {
System.out.print(" "); // 由于第10行设定日历的当前日期为一号,所以此处判断当月的一号是这周的第几天,然后再给前面输入空格 } while(month1 == gc1.get(Calendar.MONTH)) {
int day = gc1.get(Calendar.DATE); if(day < 10) {
System.out.print(" "); // 当日期为单数时再给前面输入一个空格 } System.out.print(" "+day); // 输出当前的第33行循环给定的日子 if(gc1.get(Calendar.YEAR) == year && gc1.get(Calendar.MONTH) == month && day == today) {
System.out.print("*"); // 如果日子循环到今天则输出个* }else {
System.out.print(" "); // 不是今天就输出个空格 } if(gc1.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) {
System.out.println(); // 如果日子循环到周六再换个行 } gc1.add(Calendar.DATE, 1); // 循环日期再自加一 } System.out.println(); System.out.println(); } } }}

相关思维导图:

学习Java面试题(数据库如何优化)

如果大家还不理解数据库的索引的话可以看下我昨天的帖子,链接如下:

健身

这是越跑越慢出汗越来越多啊。。。但是有效果,5斤已经下去了

照片分享

作者:9伍两VII是只猫  作品名:一路向北  出自500px社区

2021.06.10  by wyh

转载地址:http://unalf.baihongyu.com/

你可能感兴趣的文章
中小型园区网络的设计与实现 (一)
查看>>
别人的难题,就是你的价值。
查看>>
中小型园区网络的设计与实现 (二)
查看>>
中小型园区网络的设计与实现 (三)
查看>>
VLAN与子网划分区别
查看>>
Cisco Packet Tracer教程
查看>>
01. 开篇:组建小型局域网
查看>>
02. 交换机的基本配置和管理
查看>>
03. 交换机的Telnet远程登陆配置
查看>>
04. 交换机的端口聚合配置
查看>>
05. 交换机划分Vlan配置
查看>>
06. 三层交换机实现VLAN间路由
查看>>
07. 快速生成树协议
查看>>
08. 路由器的基本配置和Talent配置
查看>>
09. 路由器单臂路由配置
查看>>
10. 路由器静态路由配置
查看>>
路由器动态ip获取不到的处理办法
查看>>
微信小程序-调用-腾讯视频-解决方案
查看>>
giuhub搭建及常用操作
查看>>
phpStudy安装yaf扩展
查看>>