API常见接口

原创
2019/11/13 23:48
阅读数 194
  1. Object 类

  2. Date 类

  3. DateFormat 类

  4.  Calendar 类

1.Object 类 (java.lang包中)

所有类的父类,若一个类没有指定父类,默认继承Object类

  • toString()方法:直接输出语句输出对象调用toString()方法
    package com.day7;
    
    /**
     * @author SFJ
     * @date 2019/11/13
     * @time 21:47
     **/
    public class Test1 {
    }
    class Student extends Object{
        private int id;
        private String name;
        private int age;
        public Student(){
        }
        public String toString()
        {
            return "StudentIs::"+id+" name:"+name+" age"+age;
        }
    }
    

     

  • boolean equals()方法:继承了Object类的equals()方法
    参数:1.Object obj:可以传递任意的对象
               2.基本数据类型:比较的是值是否相等
               3.引用数据类型:比较的是两个对象的地址值(不是比较内容,但可以重写)
    package com.day7;
    
    /**
     * @author SFJ
     * @date 2019/11/13
     * @time 22:12
     **/
    public class Test2 {
        public static void main(String[] args) {
            Student student1 = new Student();
            Student student2 = student1;
            System.out.println(student1.equals(student2));
        }}
    class Student extends Object{
        private int id;
        private String name;
        private int age;
        public Student(){
        }
        public String toString()
        {
            return "StudentIs::"+id+" name:"+name+" age"+age;
        }
        @Override
        public boolean equals(Object obj) {
            if (this == obj) return true;//若为同一个对象,返回true;
            if (obj == null || getClass() != obj.getClass()) return false;//若参数为空,类型信息不同
            Student student = (Student) obj;//基本类型相等,并且将引用类型交给 Objects 类的 equals 静态方法用于内容相同规则判断
            return student.id==id &&student.name==name && student.age==age;
        }
    }
    

    2.日期时间类 (java.util包中)--Date类

       表示日期和时间,Date 表示特定的瞬间,精确到毫秒

package com.day7;

import javax.jws.soap.SOAPBinding;
import java.util.Date;

/**
 * @author SFJ
 * @date 2019/11/13
 * @time 22:28
 **/
public class Test3 {
    public static void main(String[] args) {
        Date date1 = new Date();//分配 Date 对象并初始化此对象
        System.out.println(date1);
        System.out.println("获取当前的毫秒值:"+date1.getTime());

        Date date2 = new Date(19980920);//分配 Date 对象并初始化此对象
        System.out.println(date1.getYear());
        System.out.println(date2.getTime());
    }
}

3.DateFormat类(抽象类)->子类:SimpleDateFormat

    java.text.DateFormat 是日期、时间格式化子类的抽象类可以帮我们完成日期文本之间的转换,也就是可以在 Date 对象与 String 对象之间进行来回转换 。

  1. 构造方法:public SimpleDateFormat(String pattern):用给定模式和默认语言日期格式符号
  2. 常用方法:
    1.public String format(Date date):将Date对象格式化为字符串
    2.public Date parse(String souce):将字符串解析为 Date 对象
package com.day7;

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

/**
 * @author SFJ
 * @date 2019/11/13
 * @time 22:47
 **/
public class Test4 {
    public static void main(String[] args) {
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dddd");
        Date date = new Date();
        System.out.println(simpleDateFormat.format(date));;
        String string = "2019-11-13 22:52";
        Date date1 = simpleDateFormat.parse(string);
        System.out.println(date1);
    }
}
使用Date类计算时间
package com.day7;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

/**
 * @author SFJ
 * @date 2019/11/13
 * @time 23:00
 **/
public class Test5 {
    public static void main(String[] args) {
        System.out.println("请输入出生日期");
        Scanner scanner = new Scanner(System.in);
        String date = scanner.next();
        DateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
        Date date1 = simpleDateFormat.parse(date);
        
        Date date2= new Date();
        long t;
        t = date2.getTime()-date1.getTime();
        if (t<0) System.out.println("还没出生");
        else System.out.println(t/1000/60/60/24);
    }
}

 

4.Calendar 类:(抽象类)

public static Calendar getInstance():使用默认时区和语言环境获得一个日历类对象

java.util.Calendar 是日历类,在 Date 后出现,替换掉了许多 Date 的方法,该类将所有可能用
到的时间信息封装为静态成员变量,方便获取。日历类就是方便获取各个时间属性的。

常用方法:

  • public int get(int field):返回给定日历字段的值
  • public void set(int field,int value):将给定的日历字段设置为给定的值
  • public abstract void add(int field,int value):根据日历规则,为给定的日历字段添加或减去
指定的时间量
        public Date getTime():返回一个表示此 Calendar 对象时间值得 Date 对象
package com.day7;

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

/**
 * @author SFJ
 * @date 2019/11/13
 * @time 23:34
 **/
public class Test7 {
    public static void main(String[] args) {
        //通过子类来创建对象
        Calendar c1=Calendar.getInstance();
        c1.set(Calendar.YEAR,2020);
        c1.add(Calendar.YEAR,-2);
        System.out.println("年:"+c1.get(Calendar.YEAR));
        System.out.println("月:"+c1.get(Calendar.MONTH));
        System.out.println("日:"+c1.get(Calendar.DATE));
        System.out.println("天:"+c1.get(Calendar.DAY_OF_YEAR));
        System.out.println("时:"+c1.get(Calendar.HOUR));
        System.out.println("分:"+c1.get(Calendar.MINUTE));
        System.out.println("秒:"+c1.get(Calendar.SECOND));
        Date date1=c1.getTime();
        System.out.println(date1);
    }
}

逆运算(已知时间求生日)

​
package com.day7;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Scanner;

/**
 * @author SFJ
 * @date 2019/11/13
 * @time 23:18
 **/
public class Test6 {
    public static void main(String[] args) {
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
        Calendar calendar = Calendar.getInstance();
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入生存多久");
        int days = scanner.nextInt();
        calendar.add(Calendar.DATE,-days);
        System.out.println("您的出生日期为:"+calendar.getTime());
    }




}

[点击并拖拽以移动]
​

 

 
 
 
 

 

展开阅读全文
加载中
点击加入讨论🔥(1) 发布并加入讨论🔥
打赏
1 评论
0 收藏
1
分享
返回顶部
顶部