11.常用类API

1. 日期:

1.1 Java.util.Date: 通用的日期类,基本被淘汰了

  • getYear(); 1900年到现在的年数
  • getMonth(); 月从0-11.国外的历法
  • getDate() ; 日
  • getHours(): 时
  • getMinutes(): 分
  • getSeconds(); 秒
  • getDay(); 星期: 范围0-6。 星期日是0
  • getTime(); 获取1970-1-1凌晨到现在的毫秒数
		Date d1 = new Date();
		System.out.println(d1);
			
		System.out.println(d1.getYear()); // 年 121 +  1900-1-1年开始算
		System.out.println(d1.getMonth()); // 月 2  +  国外的历法: 从0 开始的
		int a = d1.getDate(); // 日 17
		System.out.println(a);
		
		System.out.println(d1.getHours()); // 时 
		System.out.println(d1.getMinutes()); // 分
		System.out.println(d1.getSeconds()); // 秒  
		
		System.out.println(d1.getTime()); // 1615960975125 毫秒数:2021 - 51 = 1970-1-1凌晨到现在的毫秒数
		System.out.println(d1.getDay()); // 星期日==0   
		
		abc();
		System.out.println(1615960975125L / 3600 / 24 /365 / 1000.0);

1.2 Java.time包

java.time.LocalDate; 本地化的年月日

java.time.LocalTime; 本地化的时间 时分秒,毫秒

java.time.LocalDateTime: 本地化的年月日时分秒

  • get**: 获取相关的 数据。。
  • plus**: 加法操作
  • format: 格式化日期

DateTimeFormatter: 日期格式化类: yyyy-MM-dd HH:mm:ss.SSS模式

  • parse(str) : 把字符串转化 Local****
		// Local 获取本地的时间 JDK8的
		// 生日,入职时间,结课时间
		LocalDate date = LocalDate.now();
		System.out.println(LocalDate.now()); // 年月日
		System.out.println(date.getYear());
		System.out.println(date.getMonthValue()); // 1-12
		System.out.println(date.getDayOfMonth());
		System.out.println(date.getDayOfWeek().getValue()); // 1-7
		
		// 时分秒毫秒,  营业时间
		LocalTime time = LocalTime.now();
		System.out.println(time);
		System.out.println(time.getHour());
		System.out.println(time.getMinute());
		System.out.println(time.getSecond());
		System.out.println(time.getNano());
		
		LocalDateTime datetime = LocalDateTime.now();
		// 全有了
		System.out.println(datetime);
		
		// 模式: yyyy-MM-dd HH:mm:ss.SSS  DateTimeFormatter
		DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
		System.out.println(datetime.format(dtf));
		
		// 设置时间
		LocalDateTime datetime11 = LocalDateTime.of(2021, 2, 1, 12, 13, 15);
		System.out.println(datetime11);
		
		// 加法操作
		LocalDateTime ldt = datetime.plusDays(-1);
		System.out.println(datetime);
		System.out.println(ldt);

1.3 java.util.Calendar: 日历类 。 jdk1.8之前用

  • get(常量): 根据常量的不同获取不同的值。 1) 月份0-11 2)星期 1-7

  • getTIme() / setTime(); 用于 java.util.Date和 Calendar的相互转换

  • set(常量, 值); 根据常量,设置值

  • add(常量, 值): 根据常量 加 东西

    SImpleDateFormat: 用于 字符串 与 java.util.Date转换

		// 实例化
		Calendar c = Calendar.getInstance();
		
		// get(常量) 获取不同的值
		System.out.println(c.get(Calendar.YEAR)); // 获取年
		System.out.println(c.get(Calendar.MONTH)); // 获取月 0-11
		System.out.println(c.get(Calendar.DATE)); // 获取日
		
		System.out.println(c.get(Calendar.HOUR));
		System.out.println(c.get(Calendar.HOUR_OF_DAY)); // 一天中第几个小时
		System.out.println(c.get(Calendar.MINUTE));
		System.out.println(c.get(Calendar.SECOND));
		
		System.out.println(c.get(Calendar.DAY_OF_WEEK)); // 周中的日 1-7  周日==1
		
		Date d = c.getTime(); // 用于 Date与 Calendar的转换
		c.setTime(new Date()); // 
		
		// 专用于java.util。Date
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
		
		// set(常量, 值);
		c.set(Calendar.YEAR, 2022);
		
		// 按pattern格式化
		String str = sdf.format(c.getTime());
		System.out.println(str);
		System.out.println(c);
		
		// add(常量, 值);
		c.add(Calendar.YEAR, 1);
		
		System.out.println(sdf.format(c.getTime()));	
	
posted @ 2021-04-11 12:31  剑心空明  阅读(0)  评论(0编辑  收藏  举报  来源