package day15;
import java.util.Date;
/*
* Date:日期类
* Data:数据类,对应的是二进制的数据
*/
public class Demo3 {
public static void main(String[] args) {
//获取当前的时间
//Date有两个包都用这个类:
//a java.sql 对应的是数据库类中日期类 可以获取日期 时间类:Time 日期时间类:DateTime
//b java.util java中的日期类 可以获取日期+时间
Date date=new Date();
System.out.println(date);//Fri Oct 19 16:12:13 CST 2018
//long型的时间:
long time=System.currentTimeMillis();//获取当前系统的时间,单位是毫秒,返回值为long型,以某个年份的时间为基准,得到的现在时间的毫秒数
System.out.println(time);
//转化:
//将long型的数据转化成date型数据
Date date2=new Date(time);
System.out.println("date2:"+date2);
//将Date型的转成long型的
System.out.println(date2.getTime());//1539936914513
}
}
package day15;
//模板设计模式:实现一个功能的时候,分成了两部分:固定的和不固定的
//固定的由当前类实现,不固定的交给子类实现
//子类实现的功能会反过来影响固定的功能
//小例子:实现一个程序运行的程序
//分析:
//1得到的开始运行的时间--固定
//2运行的过程--变化的
//3得到结束运行的时间--固定
abstract class FuTest{
abstract void fun();
public long getTime() {
long before=System.nanoTime();//获取当前系统时间,单位是纳秒
FuTest f=new ZiTest();
f.fun();
long after=System.nanoTime();
return after-before;
}
}
class ZiTest extends FuTest{
public void fun()//模拟运行的过程
{
for(int i=0;i<100;i++)
{
System.out.println(i);
}
}
}
public class Demo2 {
public static void main(String[] args) {
ZiTest ziTest=new ZiTest();
long time=ziTest.getTime();
System.out.println(time);
}
}
package date;
import java.text.*;
import java.util.*;
/*
* 格式化转化器:format
* 日期格式转化器:DateFormat
*
* 1使用系统的默认格式转化器--DateFormat
* 2使用自定义的格式转化器--SingleDateFormat
*/
public class MyDate {
public static void main(String[] args) {
Date date=new Date();
System.out.println(date);
//1使用系统的默认格式转化器--DateFormat
//第一个:指定的日期格式 第二个:指定的时间格式 可以使用的格式:default,short,long,full
DateFormat df1=DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT);
String date1=df1.format(new Date());
System.out.println(date1);
DateFormat df2=DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL);
String date2=df2.format(new Date());
System.out.println(date2);
//2使用自定义的格式转化器--SimpleDateFormat
SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
//SimpleDateFormat s=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");也可以写成这种形式
String date3=sdf.format(new Date());
System.out.println(date3);
}
}
package day15;
import java.util.Random;
public class Demo5 {
public static void main(String[] args) {
System.out.println(Math.abs(-234));//绝对值
System.out.println(Math.floor(3.4));//floor英语:地板 作用:向下取整[3,4)为3
System.out.println(Math.ceil(3.4));//ceil:天花板 作用:向上去整[3,4)为4
System.out.println(Math.random());//[0,1)范围内的随机数
//实例:取[0,20)之间的整数
System.out.println((int)Math.floor(Math.random()*20));
//Random类
Random rand=new Random();
System.out.println(rand.nextInt(100));//[0,100)
System.out.println(rand.nextInt());//默认取int范围内的正负数
System.out.println(rand.nextInt()%100);//(-100,100)
}
}