常用类库


注: 笔记复习

Date类

Date类表示特定的时刻,精度为毫秒。

构造方法

构造器描述
Date()分配 Date对象并对其进行初始化,使其表示分配时间,测量 Date到毫秒。
Date​(long date)分配 Date对象并初始化它以表示自标准基准时间(称为“纪元”)以来的指定毫秒数,即1970年1月1日00:00:00 GMT。
		//创建一个当前时间的Date
        Date date = new Date();
        //当前时间一小时前的时间
        long time = date.getTime()-(1*60*60*1000);
        Date date2 = new Date(time);
        System.out.println(date);
        System.out.println(date2);        

显示结果

import java.util.Date;

/*
 *  时间和日期类
 *    java.util.Date
 *    
 *  毫秒概念: 1000毫秒=1秒
 *  
 *  毫秒的0点: 
 *     System.currentTimeMillis() 返回值long类型参数
 *     获取当前日期的毫秒值   3742769374405
 *     时间原点: 公元1970年1月1日,午夜0:00:00 英国格林威治  毫秒值就是0
 *     时间2088年8月8日
 *  
 *  重要: 时间和日期的计算,必须依赖毫秒值
 *    XXX-XXX-XX = 毫秒
 *    
 * 		long time = System.currentTimeMillis();
		System.out.println(time);
 */
public class DateDemo {
	public static void main(String[] args) {
		function_3();
	}
	/*
	 * Date类方法 setTime(long )传递毫秒值
	 * 将日期对象,设置到指定毫秒值上
	 * 毫秒值转成日期对象
	 * Date的构造方法
	 */
	public static void function_3(){
		Date date = new Date();
		System.out.println(date);
		
		date.setTime(0);
		System.out.println(date);
	}
	
	/*
	 *   Date类方法 getTime() 返回值long
	 *   返回的是毫秒值
	 *   将Date表示的日期,转成毫秒值
	 *   日期和毫秒值转换
	 */
	public static void function_2(){
		Date date = new Date();
		long time = date.getTime();
		System.out.println(time);
	}
	
	/*
	 * Date类的long参数的构造方法
	 * Date(long ) 表示毫秒值
	 * 传递毫秒值,将毫秒值转成对应的日期对象
	 */
	public static void function_1(){
		Date date = new Date(0);
		System.out.println(date);
	}
	
	/*
	 * Date类空参数构造方法
	 * 获取到的是,当前操作系统中的时间和日期
	 */
	public static void function(){
		Date date = new Date();
		System.out.println(date);
	}
}

方法摘要

变量和类型方法描述
longgetTime()返回自此 Date对象表示的1970年1月1日00:00:00 GMT以来的毫秒数。
voidsetTime​(long time)将此 Date对象设置为表示格林尼治标准时间1970年1月1日00:00:00之后的 time毫秒的时间点。
booleanafter​(Date when)测试此日期是否在指定日期之后。
booleanafter​(Date when)测试此日期是否在指定日期之前。

DateFormate类

DateFormat是抽象类,我们需要使用其子类SimpleDateFormat来创建对象。

构造方法

构造器描述
SimpleDateFormat()构造一个 SimpleDateFormat使用默认模式和日期格式符号默认 FORMAT区域设置。
SimpleDateFormat​(String pattern)构造一个 SimpleDateFormat使用给定的模式和默认的默认日期格式符号 FORMAT区域设置。

对日期进行格式化 (自定义)

  • 对日期格式化的类 java.text.DateFormat 抽象类, 普通方法,也有抽象的方法
  • 实际使用是子类 java.text.SimpleDateFormat 可以使用父类普通方法,重写了抽象方法
public class SimpleDateFormatDemo {
	public static void main(String[] args) {
		function();
	}
	/*
	 * 如何对日期格式化
	 *  步骤:
	 *    1. 创建SimpleDateFormat对象
	 *       在类构造方法中,写入字符串的日期格式 (自己定义)
	 *    2. SimpleDateFormat调用方法format对日期进行格式化
	 *         String format(Date date) 传递日期对象,返回字符串
	 *    日期模式:
	 *       yyyy    年份
	 *       MM      月份
	 *       dd      月中的天数
	 *       HH       0-23小时
	 *       mm      小时中的分钟
	 *       ss      秒
	 *       yyyy年MM月dd日 HH点mm分钟ss秒  汉字修改,: -  字母表示的每个字段不可以随便写
	 */
	public static void function(){
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH点mm分钟ss秒");
		String date = sdf.format(new Date());
		System.out.println(date);
	}
}
//运行结果: 2021年01月08日 01点08分钟04秒

DateFormat类方法 parse

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/*
 *   DateFormat类方法 parse
 *   将字符串解析为日期对象
 *   Date parse(String s) 字符串变成日期对象
 *   String => Date parse
 *   Date => String format
 *   
 */
public class SimpleDateFormatDemo1 {
	public static void main(String[] args) throws Exception{
		function();
	}
	/*
	 *  将字符串转成Date对象
	 *  DateFormat类方法 parse
	 *  步骤:
	 *    1. 创建SimpleDateFormat的对象
	 *       构造方法中,指定日期模式
	 *    2. 子类对象,调用方法 parse 传递String,返回Date
	 *    
	 *    注意: 时间和日期的模式yyyy-MM-dd, 必须和字符串中的时间日期匹配
	 *                     1995-5-6
	 *    
	 *    但是,日期是用户键盘输入, 日期根本不能输入
	 *    用户选择的形式
	 */
	public static void function() throws Exception{
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		Date date = sdf.parse("1995-5-6");
		System.out.println(date);
	}
}
//运行结果: Sat May 06 00:00:00 CST 1995

Calendar类

日历类 java.util.Calendar
Calendar类写了静态方法 getInstance() 直接返回了子类的对象
不需要直接new 子类的对象,通过静态方法直接获取

Calendar c = Calendar.getInstance();

get()方法

变量和类型方法描述
intget​(int field)返回给定日历字段的值。
/*
	 * Calendar类的get方法 获取日历字段的值 int get(int) 
	 * 参数int,获取的哪个日历字段 返回值,就表示日历字段的具体数值
	 */
	public static void funtion() {
		Calendar c = Calendar.getInstance();
		// 获取年份
		int year = c.get(Calendar.YEAR);
		// 获取月份
		int month = c.get(Calendar.MONTH) + 1;
		// 获取天数(一年的第几天)
		int dayOfYear = c.get(Calendar.DAY_OF_MONTH);
		// 获取天数(一月的第几天)
		int daoOfMonth = c.get(Calendar.DAY_OF_MONTH);
		System.out.println(year + "年" + month + "月" + dayOfYear + "日");
	}

set()方法

变量和类型方法描述
voidset​(int field, int value)将给定的日历字段设置为给定值。
/*
	 * Calendar类的set方法 设置日历 set(int field,int value) 
	 * field 设置的是哪个日历字段 
	 * value设置后的具体数值
	 * 
	 * set(int year,int month,int day) 传递3个整数的年,月,日
	 */
	public static void function_1() {
		Calendar c = Calendar.getInstance();
		// 设置,月份,设置到10月分
		// c.set(Calendar.MONTH, 9);

		// 设置年,月,日
		c.set(2099, 4, 1);

		// 获取年份
		int year = c.get(Calendar.YEAR);
		// 获取月份
		int month = c.get(Calendar.MONTH) + 1;
		// 获取天数
		int day = c.get(Calendar.DAY_OF_MONTH);
		System.out.println(year + "年" + month + "月" + day + "日");
	}

add()方法

变量和类型方法描述
abstract voidadd​(int field, int amount)根据日历的规则,将指定的时间量添加或减去给定的日历字段。
/*
	 * Calendar类方法add 日历的偏移量,
	 * 可以指定一个日历中的字段,
	 * 进行整数的偏移 add(int field, int value)
	 */
	public static void function_2() {
		Calendar c = Calendar.getInstance();
		// 让日历中的天数,向后偏移280天
		c.add(Calendar.DAY_OF_MONTH, -280);
		// 获取年份
		int year = c.get(Calendar.YEAR);
		// 获取月份
		int month = c.get(Calendar.MONTH) + 1;
		// 获取天数
		int day = c.get(Calendar.DAY_OF_MONTH);
		System.out.println(year + "年" + month + "月" + day + "日");
	}

getTime()方法

变量和类型方法描述
DategetTime()返回一个 Date对象,表示此 Calendar的时间值(距离 Epoch的毫秒偏移量)。
/*
	 * Calendar类的方法getTime()
	 * 把日历对象,转成Date日期对象
	 */
	public static void function_3(){
		Calendar c = Calendar.getInstance();
		Date date = c.getTime();
		System.out.println(date);
	}

getActualMaximum方法

变量和类型方法描述
intgetActualMaximum​(int field)给定此 Calendar的时间值,返回指定日历字段可能具有的 Calendar 最大值
public static void function_4(){
		Calendar c1 = Calendar.getInstance();
		//当前日期月份最大天数
		int m = c1.getActualMaximum(Calendar.DAY_OF_MONTH);
		System.out.println(m);
	}
//运行结果31(时间:2021-1-8)	

System类

变量和类型方法描述
static voidexit​(int status)终止当前运行的Java虚拟机。
static voidgc()运行垃圾收集器。
static longcurrentTimeMillis()以毫秒为单位返回当前时间。

String类

String类表示字符串。 Java程序中的所有字符串文字(例如"abc" )都实现为此类的实例。

字符串是不变的; 它们的值在创建后无法更改。因为String对象不可变,所以可以共享它们。

字符串实现缓存:在字符串常量池缓存。字符串常量池存在方法区。方法区就是加载代码的内存区域。

String text = "12345";
String text1 = new String("12345");
//text text1 不是同一个对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值