System类,File类与Date类

一,System类

1,概述System 类包含一些有用的类字段和方法。它不能被实例化。

2,常用方法

static longcurrentTimeMillis() 返回以毫秒为单位的当前时间。

long start = System.currentTimeMillis();

 代码练习

package Test00.System;

public class Test01 {
    public static void main(String[] args) {
        //currentTimeMillis是 获取当前时间的毫秒值。用处:做性能测试;配合生成不重复编号。
        long start = System.currentTimeMillis();

        //性能测试小程序
        for (int i=0;i<=100000;i++){
            System.out.println(i);
        }
        long end = System.currentTimeMillis();//获取当前系统的毫秒值

        System.out.println("十万次性能测试"+(end-start)+"毫秒");
    }
}

 二,File(文件)类

1,概述:文件和目录路径名的抽象表示形式。

注意:File 类的实例是不可变的;一旦创建,File 对象表示的抽象路径名将永不改变

2,常用构造方法

File(File parent, String child)
          根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
File(String pathname)
          通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
File(String parent, String child)
          根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。

 代码示例:

package Test00.File;

import java.io.File;
import java.io.IOException;

public class Test01 {
    public static void main(String[] args) throws IOException {
        File f2=new File("D:/aa","cc.txt");//构造方法一

        File f1=new File("D:/aa/bb/cc");//构造方法二
        
        File file=new File("D:/aa");//构造方法三
        File f3=new File(file,"bb.txt");

    }
}

 3,常用方法

 booleandelete()
          删除此抽象路径名表示的文件或目录。
 booleanequals(Object obj)
          测试此抽象路径名与给定对象是否相等。
 StringgetAbsolutePath()
          返回此抽象路径名的绝对路径名字符串。
 StringgetName()
          返回由此抽象路径名表示的文件或目录的名称。
 StringgetParent()
          返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null
 StringgetPath()
          将此抽象路径名转换为一个路径名字符串。
 longlength()
          返回由此抽象路径名表示的文件的长度。
 String[]list()
          返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。
 booleanmkdir()
          创建此抽象路径名指定的目录。
 booleanmkdirs()
          创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。
 booleanrenameTo(File dest)
          重新命名此抽象路径名表示的文件。
 StringtoString()
          返回此抽象路径名的路径名字符串。
package Test00.File;

import java.io.File;

public class Test02 {
    public static void main(String[] args) {
        File f1=new File("D:/aa/bb/c.txt");//创建文件
        File f2=new File("./c.txt");
        File f3=new File("D:/aa/bb");//创建文件夹

        String absolutePath = f1.getAbsolutePath();//绝对磁盘路径
        String absolutePath1 = f2.getAbsolutePath();//绝对磁盘路径

        System.out.println("文件的绝对路径"+absolutePath);
        System.out.println("文件的绝对路径"+absolutePath1);

        String path = f1.getPath();
        String path1 = f2.getPath();
        System.out.println("文件定义的路径"+path);
        System.out.println("文件定义的路径"+path1);

        String name = f1.getName();
        String name1 = f2.getName();
        System.out.println("文件名称"+name);
        System.out.println("文件名称"+name1);

        String parent = f1.getParent();
        String parent1 = f2.getParent();
        System.out.println("父路径"+parent);
        System.out.println("父路径"+parent1);

        File parentFile = f1.getParentFile();
        File parentFile1 = f2.getParentFile();
        System.out.println("父路径"+parentFile);
        System.out.println("父路径"+parentFile1);

        long length = f1.length();
        System.out.println("文件大小"+length);

        System.out.println(f1.exists());//判断该文件或文件夹是否存在
        System.out.println(f2.exists());
        System.out.println(f3.exists());

        System.out.println("-----------------");
        System.out.println(f1.isDirectory());//判断是否为文件夹
        System.out.println(f1.isFile());//判断是否为文件
        System.out.println(f3.isDirectory());
        System.out.println(f3.isFile());
    }
}

4,文件的创建与删除 

1):创建

//File的创建  文件----文件夹
File f1=new File("D:/aa/bb/c.txt");
//1,如果文件的前置目录路径不存在,则抛出异常 2,路径存在,文件不存在,则创建一个空文件;文件存在,则没有操作
f1.createNewFile();

File f2=new File("D:/xx/yy/zz");
//要求全部前置目录存在,才会创建
//f2.mkdir();//创建目录
//可以自动补全父目录,并创建
f2.mkdirs();//创建目录,包括必须但不存在的父目录

2):删除

//File的删除
File f3=new File("D:/xx/yy/zz");
File f4=new File("D:/xx/yy/zz/c.txt");
//删除是文件夹必须为空,才可以删除
 f3.delete();
 //删除文件是可以直接删除
 f4.delete();

三,Date(日期)类

一,Date

1,概述:  表示特定的瞬间,精确到毫秒。

日期在开发中常用来储存  生日,下单时间,付款时间,审批时间

2,常用构造方法

Date() 分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。

Date(long date)分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。

 代码示例

Date date1=new Date();//获取基于当前环境的时间

Date date2=new Date(60000);//创建一个距离1970年1月1日 08:00:00(东八区)经过了多少毫秒的时间

 二,DateFormat

1,概述:DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。

2,构造方法

DateFormat() 创建一个新的 DateFormat。

代码示例

SimpleDateFormat d1=new SimpleDateFormat();

3,常用方法

format(Date date) 将一个 Date 格式化为日期/时间字符串。

parse(String source)  从给定字符串的开始解析文本,以生成一个日期。

代码示例

package Test00.Date.SimpleDateFormat;

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

public class Test01 {
    public static void main(String[] args) throws ParseException {
        //SimpleDateFormat 用来实现日期和字符串之间的相互转化

        SimpleDateFormat d1=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//创建日期格式化对象,指定格式符号
        Date date1=new Date();//获取当前系统时间

        //将日期转为指定格式的字符串
        String format=d1.format(date1);
        System.out.println(format);

        //将指定格式的字符串转为日期
        String time="2000/10/20 8:20:38";
        Date date2=d1.parse(time);
        System.out.println(date2);
    }
}

 三,Calendar(日历)类

1,概述:Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEARMONTHDAY_OF_MONTHHOUR日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

2,构造方法

Calendar类 是一个抽象类,可以通过Calendar的getInstance方法返回一个Calendar对象
Calendar calendar=Calendar.getInstance();

3,常用方法

package Test00.Date.Calendar;

import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;

public class Test01 {
    public static void main(String[] args) {
        //Calendar类 是一个抽象类,可以通过Calendar的getInstance方法返回一个Calendar对象
        Calendar calendar=Calendar.getInstance();
        Date time = calendar.getTime();//获取当前系统时间
        System.out.println(time);

        long timeInMillis = calendar.getTimeInMillis();
        System.out.println(timeInMillis);//获取当前时间的毫秒值

        TimeZone timeZone = calendar.getTimeZone();
        System.out.println(timeZone);//获取当前时区

        //get方法可以根据指定的日历字段,获取时间对应的值
        int year = calendar.get(Calendar.YEAR);//年
        System.out.println(year);
        int month = calendar.get(Calendar.DATE);//0-11月 表示1-12月
        System.out.println(month+1);
        int date= calendar.get(Calendar.DAY_OF_MONTH);//日
        System.out.println(date);
        int day_of_year = calendar.get(Calendar.DAY_OF_YEAR);//今天是今年第几天
        System.out.println(day_of_year);


        //获取指定时间   0-11月份 表示1-12月份
        calendar.set(2000,7,15,8,12,23);
        Date time1 = calendar.getTime();
        System.out.println(time1);
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值