常用类介绍02

1.Date(java.util.Date)

日期介绍:

		//定义方式
		Date date = new Date();
		
		System.out.println(date);
		/*	Wed Jun 19 11:29:00 CST 2019
		 * 	满足一种规则:EEE  MM dd HH:mm:ss zzz yyyy
		 *	满足这个规则的日期格式被称为:格林威制格式
		 *	
		 *	在中国一般的格式
		 *	yyyy-MM-dd  HH:mm:ss  或   yyyy-MM-dd
		 *
		 * 
		 * */
		//获取系统时间  时间戳
		System.out.println(System.currentTimeMillis());
		
		//获取时间戳
		System.out.println(date.getTime());
		
		//知道时间戳 获取对应日期
		date.setTime(0);
		System.out.println(date);
		
		//before() 和  after() 用于比较两个时间的先后顺序
		System.out.println(date.before(new Date()));
		System.out.println(date.after(new Date()));

2.DateFormat

日期格式化:

		Date date =new Date();
		
		//转换为yyyy-MM-dd  HH:mm:ss  或   yyyy-MM-dd
		//根据操作系统所处的位置选择的格式
		System.out.println(DateFormat.getDateInstance().format(date));
		
		//日本的日期格式  根据程序员的要求显示
		/*
		 * DateFormat.FULL 全格式  2019年6月19日星期三
		 * DateFormat.LONG   2019年6月19日
		 * DateFormat.MEDIUM   2019-6-19
		 * 
		 * Locale指代的是 地区和语言环境
		 * Locale.JAPAN 表示日本
		 */
		System.out.println(DateFormat.getDateInstance(DateFormat.FULL,Locale.JAPAN).format(date));
		System.out.println(DateFormat.getDateInstance(DateFormat.FULL,Locale.TAIWAN).format(date));
		System.out.println(DateFormat.getDateInstance(DateFormat.FULL,Locale.US).format(date));
		
		//显示时间
		System.out.println(DateFormat.getTimeInstance().format(date));
		
		//同理如果需要按照程序员的指定的显示时间的话,同样可以getDateInstance()的方法
		System.out.println(DateFormat.getTimeInstance(DateFormat.FULL,Locale.JAPAN).format(date));
		System.out.println(DateFormat.getTimeInstance(DateFormat.FULL,Locale.TAIWAN).format(date));
		System.out.println(DateFormat.getTimeInstance(DateFormat.FULL,Locale.US).format(date));
		
		//显示时间和日期
		System.out.println(DateFormat.getDateTimeInstance().format(date));
		
		//同理如果需要按照程序员的指定的显示时间的话,同样可以getDateInstance()的方法
		System.out.println(DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL,Locale.JAPAN).format(date));
		System.out.println(DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL,Locale.TAIWAN).format(date));
		System.out.println(DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL,Locale.US).format(date));

日期解析:

		//解析String 为Date  需要String格式对比正确
		String str = "2019年06月19日星期日";
		DateFormat df = DateFormat.getDateInstance(DateFormat.FULL);
		Date  date = null;
		try {
			date = df.parse(str);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} 
		System.out.println(date);

3.SimpleDateFormat(DateFormat的子类)

相对DateFormat解析和格式化更为方便

日期格式化
SimpleDateFormat 可以让程序员自行定义格式化的格式

		SimpleDateFormat sdf = new SimpleDateFormat();
		Date date = new Date();
		
		//自定义格式
		sdf.applyPattern("yyyy-MM-dd aa HH:mm:ss:SSS ");
		System.out.println(sdf.format(date));

日期解析
SimpleDateFormat 可以让程序员自行定义解析的格式

		String str = "2019-06-19 下午 15:07:20:782 ";
		SimpleDateFormat sdf = new SimpleDateFormat();
		sdf.applyPattern("yyyy-MM-dd aa HH:mm:ss:SSS ");
		Date date = null;
		try {
			date =  sdf.parse(str);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(date);

4.Calendar(日历类)

日历类的介绍:

		Date date = new Date();
		
		//获得系统自带的日历对象
		Calendar calendar = Calendar.getInstance();
		
		//获取当前时间
		System.out.println(calendar.getTime());
		
		//日历默认映射的是当天
		//get到 
		System.out.println( calendar.get(+Calendar.YEAR) + "年" );
		System.out.println(calendar.get(Calendar.MONTH) + 1 + "月" );
		System.out.println( calendar.get(Calendar.DAY_OF_MONTH  )+ "日");
		System.out.println("上午0  下午1:  " + calendar.get(Calendar.AM_PM));
		System.out.println("小时 12制:" + calendar.get(Calendar.HOUR));
		System.out.println("小时 24制:" + calendar.get(Calendar.HOUR_OF_DAY));
		System.out.println("分钟" + calendar.get(Calendar.MINUTE));
		System.out.println("秒" + calendar.get(Calendar.SECOND));
		System.out.println("毫秒" + calendar.get(Calendar.MILLISECOND));
		
		System.out.println("一周的第"+calendar.get(Calendar.DAY_OF_WEEK)+"天  周日为第一天");
		System.out.println("某个月的第"+calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH)+"周");
		System.out.println("某个年的第"+ calendar.get(Calendar.WEEK_OF_YEAR)+"周" );
		System.out.println("某个年的第"+ calendar.get(Calendar.DAY_OF_YEAR)+"天" );
		
		//根据日历类,去推算时间  
		//例如23年后是多少年
		calendar.add(Calendar.YEAR, 23);
		System.out.println(calendar.getTime());
		
		//例如在180天后是什么时间
		calendar.add(Calendar.YEAR, -23);
		calendar.add(Calendar.DAY_OF_YEAR, 180);
		System.out.println(calendar.getTime());
		
		String str  = "2019-6-19";
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		try {
			date = sdf.parse(str);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		//将日期映射到日历上
		calendar.setTime(date);
		System.out.println(calendar.getTime());
		
		//set到年月日时分
		calendar.set(2008, 10, 12, 10, 30);
		System.out.println(calendar.getTime());

5.Math(数学类)

Math类就是java中的数学类
数学类中存放了 很多数学运算的方法 及 常量

常用方法:

		//求一个绝对值
		System.out.println(Math.abs(-1));
		//求一个数的平方根
		System.out.println(Math.sqrt(64));
		//求一个数的立方根
		System.out.println(Math.cbrt(64));
		//求一个数的五立方根
		System.out.println(Math.pow(32, 1/5.0));
		
		//求一个数的五次方
		System.out.println(Math.pow(2, 5));
		
		//随机数 范围 [0,1)  一个doule值
		System.out.println(Math.random());
		
		//返回向上取整一个double值
		System.out.println(Math.ceil(10.01234));
		//返回向下取整一个double值
		System.out.println(Math.floor(10.01234));
		
		//勾股定律 
		System.out.println(Math.hypot(3, 4));
		
		//自然数 一个无限不循环小数
		System.out.println(Math.E);
		//求 e的几次方等于e
		System.out.println(Math.log(Math.E));
		//求 10的几次方等于1000
		System.out.println(Math.log10(1000));
		
		// 这个数接近的两个double值的整数  值在中间选择偶数 其他情况选择比较接近的数
		System.out.println(Math.rint(5.5));//6
		System.out.println(Math.rint(6.5));//6
		
		//四舍五入 
		//这个数接近的两个long值的整数  值在中间选择大的一个数 其他情况选择比较接近的数
		System.out.println(Math.round(5.5));

6. Random(随机类)

随机也是可重演的(种子相同,随机的基本数据类型相同)

		Random random = new Random();
		//nextInt() 获取一个随机整数   还可以获取随机基本数据类型中的其他类型
		System.out.println(random.nextInt());
		
		//产生一个[0-100)的整数值
		System.out.println(random.nextInt(100));
		
		/*
		 * 相同的种子数,可以让我们模拟上次得到的随机数
		 * 特殊场景:查看发过的邀请码
		 */
		 //创建一个随机数对象,设置种子
		Random random2 = new Random();
		random2.setSeed(100);
		System.out.println(random2.nextInt());
		
		//在创建对象的时候就传入种子
		Random random3 = new Random(100);
		System.out.println(random3.nextInt());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值