package DateTest;

 import java.util.Date;

 public class Date1 {
public static void main(String[] args){
Date d=new Date();
System.out.println(d); Date d2=new Date();
System.out.println(d2.getTime());
System.out.println(d2.after(d)); //日期处理使用Canlendar日期类
Date d3=new Date(2020-1900,3,13); //2020年4月13日
System.out.println(d3);
}
}
 package DateTest;

 import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar; public class TestCalendar {
public static void main(String[] args) { //获得日期的相关元素
Calendar canlendar=new GregorianCalendar(2999,10,9,22,10,50);
int year=canlendar.get(Calendar.YEAR);
int month=canlendar.get(Calendar.MONTH);
int day=canlendar.get(Calendar.DATE);
int weekday=canlendar.get(Calendar.DAY_OF_WEEK); //星期几
System.out.println(year);
System.out.println(month);
System.out.println(weekday);
System.out.println(day); //设置日期的相关元素
Calendar c2=new GregorianCalendar();
c2.set(Calendar.YEAR,9102); System.out.println(c2); //日期的计算
Calendar c3=new GregorianCalendar();
c3.add(Calendar.DATE,100);
System.out.println(c3); //时间对象和日期对象的转化
Date d4=c3.getTime();
Calendar c4=new GregorianCalendar();
c4.setTime(new Date());
printCalendar(c4);
} public static void printCalendar(Calendar c){
//打印1918年10月10日 11:23:45 周三
int year=c.get(Calendar.YEAR);
int month=c.get(Calendar.MONTH)+1;
int date=c.get(Calendar.DAY_OF_MONTH);
int dayweek=c.get(Calendar.DAY_OF_WEEK)-1;
String dayweek2=dayweek==0?"日":dayweek+""; int hour=c.get(Calendar.HOUR);
int minute=c.get(Calendar.MINUTE);
int second=c.get(Calendar.SECOND); System.out.println(year+"年"+month+"月"+date+"日"+hour+"时"+minute+"分"+second+"秒"+" 周"+dayweek2);
}
}
 package DateTest;

 import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar; public class TestCalendar2 {
public static void main(String[] args) throws ParseException {
String str="2020-10-10";
DateFormat df=new SimpleDateFormat("yyyy-MM-dd");
Date date=df.parse(str);
Calendar c=new GregorianCalendar();
c.setTime(date);
//把时间字符串按照yyyy-MM-dd的形式转化为时间传给c System.out.println("日\t一\t二\t三\t四\t五\t六");
c.set(Calendar.DAY_OF_MONTH,1);
for(int i=0;i<c.get(Calendar.DAY_OF_WEEK)-1;i++){
System.out.print("\t");
}
for(int i=1;i<=c.getActualMaximum(Calendar.DATE);i++){
System.out.print(c.get(Calendar.DAY_OF_MONTH)+"\t");
if(c.get(Calendar.DAY_OF_WEEK)==Calendar.SATURDAY){
System.out.println();
}
c.add(Calendar.DAY_OF_MONTH,1); }
}
}
 package DateTest;

 import java.text.*;
import java.util.Date; public class TestDateFormat {
public static void main(String[] args) throws ParseException { //把时间对象按照格式“格式字符串指定的格式”转成相应的字符串
DateFormat df=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String str=df.format(new Date(4000000));
System.out.println(str); //把字符串按照格式“格式字符串指定的格式”转成相应的时间对象
DateFormat df2=new SimpleDateFormat("yyyy年MM月dd日 hh时mm分ss秒");
Date date=df2.parse("1983年05月10日 10时45分45秒");
System.out.println(date); //测试其他的格式字符,比如:利用D,获得本时间对象处于本年的第几天
DateFormat df3=new SimpleDateFormat("D");
String str3=df3.format(new Date());
System.out.println(str3);
}
}

Java学习第二篇 — 时间类的使用的更多相关文章

  1. 从.Net到Java学习第二篇——IDEA and start spring boot

    从.Net到Java学习第一篇——开篇 所谓工欲善其事,必先利其器,做java开发也一样,在比较了目前最流行的几个java IDE(eclipse,myeclipse.IDEA)之后,我果断选择IDE ...

  2. Java 学习 第二篇;面向对象 定义类的简单语法:

    1:基本知识 [public / protected / private] class 类名 { 零个到多个构造器定义; 零个到多个属性; 零个到多个方法; } 其中类中各个成员之间的顺序没有关系,且 ...

  3. Java学习第二篇:类,对象,成员属性,成员方法,构造方法,类变量,类方法

    一.类的定义 一个全面的类定义是比较复杂的,  定义如下:

  4. java 学习第二篇关系运算符和布尔值

    关系运算符,顾名思义.用来看什么关系.(也就是用来比较) 看下表 JAVA 关系运算符 a=6,b=5 关系运算符 举例 值 解释 > a>b true a大于b < a<b ...

  5. 从.Net到Java学习第一篇——开篇

    以前我常说,公司用什么技术我就学什么.可是对于java,我曾经一度以为“学java是不可能的,这辈子不可能学java的.”结果,一遇到公司转java,我就不得不跑路了,于是乎,回头一看N家公司交过社保 ...

  6. Java并发包下锁学习第二篇Java并发基础框架-队列同步器介绍

    Java并发包下锁学习第二篇队列同步器 还记得在第一篇文章中,讲到的locks包下的类结果图吗?如下图: ​ 从图中,我们可以看到AbstractQueuedSynchronizer这个类很重要(在本 ...

  7. Java SE 第二篇

    二.  Java SE 第二篇 1.  Arrays 数组 // 声明一维数组,[]内不允许有值 int[] arr; int arr[]; // 创建一维数组对象,[]内必须有值 arr = new ...

  8. Java学习-041-颜色工具类(RGB,HEX)

    在日常的网页开发中,经常需要进行颜色数值获取.转换,例如获取红色,获取蓝色,获取绿色,RGB转十六进制颜色,十六进制颜色转RGB等,因而在学习过程中,写了一个小工具类,仅供各位小主参考! 多不闲言,直 ...

  9. Java学习-049-正则工具类

    自去年九月份决定再次入学和职业资格进阶,开始备战二者考试至今,以及当下进行中的职称申请,犹如孤独的狼,不断前行在路上,而今凡凡总总的已历8月... 不感慨了,如下为一园友需要的正则工具类,直接上码: ...

随机推荐

  1. linux的cd命令

    面试时被问到了一个命令是什么意思 cd - 还真是一脸懵逼.... 回来试了下 发现真的是一个神奇的命令~ 会跳到之前目录下并输出, 比如

  2. 拿 .properties 这种里面的数据 在不同的地方

    1 在xml中 2 在.java中 @Value("#{configProperties['key']}")    configProperties不是固定(根据配置时的id)  ...

  3. linux安装使用7zip

    7z,全称7-Zip, 是一款开源软件.是目前公认的压缩比例最大的压缩解压软件. 源码编译安装 官网下载地址:http://www.7-zip.org/download.html 源文件项目地址:ht ...

  4. cAdvisor+InfluxDB+Grafana 监控Docker

    容器的监控方案其实有很多,有docker自身的docker stats命令.有Scout.有Data Dog等等,本文主要和大家分享一下比较经典的容器开源监控方案组合:cAdvisor+InfluxD ...

  5. IntelliJ IDEA导入多个eclipse项目到同一个workspace下

    IntelliJ IDEA 与eclipse在新建项目上工作区的叫法略有不同,区别见下图. 我们在eclipse都是在新建的workspace目录下新建我们的项目,但是在IDEA中没有workspac ...

  6. 多线程编程——java

    1.进程和线程 进程:一个计算机程序的运行实例,包含了需要执行的指令:有自己的独立地址空间,包含程序内容和数据:不同进程的地址空间是互相隔离的:进程拥有各种资源和状态信息,包括打开的文件.子进程和信号 ...

  7. mpvue图片轮播遇到的问题

    小程序官方写法: <swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" i ...

  8. PHP多进程系列笔记(五)

    前面几节都是讲解pcntl扩展实现的多进程程序.本节给大家介绍swoole扩展的swoole_process模块. swoole多进程 swoole_process 是swoole提供的进程管理模块, ...

  9. Vue + Element UI 实现权限管理系统 前端篇(四):优化登录流程

    完善登录流程 1. 丰富登录界面 1.1 从 Element 指南中选择组件模板丰富登录界面,放置一个登录界面表单,包含账号密码输入框和登录重置按钮. <template> <el- ...

  10. 查看 postgresql 数据库编码,以及修改数据库编码

    查看数据表编码: \encoding 修改数据库编码: update pg_database set encoding = pg_char_to_encoding('UTF8') where datn ...