java回顾之API

java回顾之API

一、Object类

java.lang.Object类是java语言中的根类,祖宗类。所有的类都直接或间接的继承自Object。

在对象实例化的时候,最终找到的父类就是Object。

1.2、equals()方法判断是否相等

==号:

判断基本数据类型时判断的是值是否相等,判断引用数据类型是判断的是地址值是否相等

equals()

是objec类的一个方法,判断的是两个对象是否相同

无论用哪种方法,建议将常量放在等号的左边,以防止出现空指针或者不报编译错误的错误

1.3、toString()方法

重写toString可以将对象具体的值打印出来,而不是只打印地址,后面可以配合注解使用。

1.4、native关键字

  native用来修饰方法,此方法是本地方法,表用调用了非java方法,在java中无法显示,所以无法查看源码

二、日期类Date

public Date()     new Date()     将当前的系统时间,转换成Date对象

public Date(long date)  new Date(1000)   将指定参数的毫秒值,转换成Date对象

  

  Date d =new Date 

  getTime()  获取时间对象的毫秒值   d.getTime()

  setTime(long time)   设置时间对象的毫秒值 d.setTime(1000)

  before(Date date)     判断当前对象是否在参数时间之前

  after(Date date) 判断当前对象是否在参数时间之后

2.2、日期格式化类DateFormat

  DateFormat是一个抽象类。这个类的功能是对日期格式进行改变,还可以对String字符串类型和Date日期类型做互相转换。

  String format(Date date)      格式化:将Date对象转换为Stirng对象

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

  Date date =new Date();

  sdf.format(d);

  Date parse(String s)     将String对象转换为Date对象

  Date date=sdf.parse(s)

2.3 日历类Calendar

Calendar把和时间相关的值都变成了字段,可以更加方便的对各种值进行单独的操作

创建对象有两种方法,一种是直接创建子类GregorianCalendar

GregorianCalendar  gc = new GregorianCalendar();

一种是调用静态方法

Calendar c=Calendar.getInstance();

方法说明
int get(int field) 获取某个字段的值
void set(int field,int value) 设置某个字段的值
void add(int field,int amount) 偏移某个字段的值(加减)
setTime(Date date) 把Date对象转成Calendar对象

Calender中定义的常量:

Calendar.YEAR : 年
Calendar.MONTH :月
Calendar.DAY_OF_MONTH:日期
Calendar.HOUR:小时
Calendar.MINUTE:分钟
Calendar.SECOND:秒
Calendar.DAY_OF_WEEK:星期

 

举例说明:

获取对象

  Calendar c=Calendar.getInstance();  //代表当前系统时间

获取某个字段的值

  int year=c.get(Calendar.YEAR);

//获取月,在日历对象内部,保存月份用的是0-11,所以去除月份要+1;

  int month = c.get(Calendar.MONTH);
  System.out.println(month+1);

//获取日期
  int day = c.get(Calendar.DAY_OF_MONTH);
  System.out.println(day);

//获取小时
  int hour = c.get(Calendar.HOUR_OF_DAY);
  System.out.println(hour);

//获取分钟
  int minute = c.get(Calendar.MINUTE);
  System.out.println(minute);

//获取秒
  int second = c.get(Calendar.SECOND);
  System.out.println(second);

      //获取星期!!!日历类里面保存星期是以星期日作为一周的第1天,星期一就是第2天,所以可以将星期定义成数组,下标正好对应正确的星期。

//定义数组
  String[] arr = {" ","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};

 

  数组的下标 0         1             2           3           4            5              6            7

日历内部存储      1      2       3    4    5   6         7

  比如今天是星期一,内部返回的值是2,如此取值,星期就不会错了。

//获取星期

  int i = c.get(Calendar.DAY_OF_WEEK); // 1-7

set()和add()方法演示 

  //把年设置成2000年
  c.set(Calendar.YEAR,2000);
  //把月设置成10月
  c.set(Calendar.MONTH,9);

  //让年加10
  c.add(Calendar.YEAR,10);
  //让日减6
  c.add(Calendar.DAY_OF_MONTH,-6);

  setTime(Date date)方法演示 

  //把Date的时间赋值给Calendar
  Calendar c = Calendar.getInstance();

  c.setTime(d);

2.4Math类

  Math表示数学,和数学相关的一些计算方法在这个类中

  

方法说明
static int abs(int a) 获取绝对值
static double ceil(double a) 向上取整
static double floor(double a) 向下取整
static double pow(double a, double b) 获取a的b次方
static long round(double a) 四舍五入

  //获取绝对值

  System.out.println(Math.abs(3)); //3
  System.out.println(Math.abs(-4)); //4

  向上取整

  Math.ceil(3.14)//4.0

  向下取整

  Math.floor(3.14)//3.0

  获取a的b次方

  Math.pow(2,3)//2的3次方 8.0

  四舍五入

  Math.round(4.45)  4

  Math.round(4.5)   5

2.5、System

方法说明
static void exit(int status) 退出虚拟机,0表示正常退出
static long currentTimeMillis() 获取当前时间的毫秒值
static void arrayCopy() 数组中元素的复制

  

    //退出虚拟机,0表示正常退出

     System.exit(0);

  //获取当前时间的毫秒值

  long time = System.currentTimeMillis();

  System.out.println(time);

  

  //数组中元素的复制
  int[] arr = {11,22,33,44,55,66};
  int[] brr = new int[6];
  /*
  Object src 原数组
  int srcPos 原数组开始索引
  Object dest 目标数组
  int destPos 目标数组开始索引
  int length 复制的个数
  */
  System.arraycopy(arr,1,brr,0,3);  从arr下标1开始复制3个数字到brr从下标0开始

  

  int[] crr = {11,22,33,44,55};

  System.arraycopy(crr,2,crr,0,3); 从crr2开始,复制三个数到0开始

  //33 44 55 44 55 

 

  

posted @ 2020-09-28 21:16  springcode  阅读(116)  评论(0编辑  收藏  举报