API概述
概述
API(Application Programming Interface) 应用程序编程接口。Java API对于程序员来说就是一本能够检索查找的【字典】,是JDK官网提供给程序开发者应用类的阐明文档。这些类将底层的代码封装起来,咱们不须要关注这些类底层是如何实现的,咱们只须要晓得这些类是如何应用的。平时开发应用JDK类库的时候,通过查阅API的形式进行的。
API的应用步骤
关上帮忙文档
点击显示,找到索引,找到输入框
在输入框中输出你要查找的类,而后回车
看该类的所在包,对于java.lang包上面的类不须要导包,其余都须要
看该类的解释阐明和类构造
学习该类的构造方法和成员办法
Java的罕用API
Object类
1.toString办法
在咱们间接应用输入语句输入对象的时候,其实通过该对象调用了其toString()办法。
2.equals办法
办法摘要:
类默认继承了Object类,所以能够应用Object类的equals办法
boolean equals(Object obj)批示其余某个对象是否与此对象“相等”。
equalse办法源码:
public boolean equals(Object obj){
return (this == obj);
}</pre>
参数:
- Object obj:能够传递任意的对象
- == 比拟运算符,返回的是一个布尔值 true false
- 根本数据类型:比拟的是值
- 援用数据类型:计较的是两个对象的地址值
Data类
java.util.Date:示意日期和工夫的类
类Date 示意特定的霎时,准确到毫秒。
毫秒:千分之一秒 1000毫秒=1秒
把日期转换成毫秒:
- 以后的日期:2019-07-18
- 工夫原点(0毫秒):1970-01-01 00:00:00(英国格林威治)
- 就是计算以后日期到工夫原点之间一共经验了多少毫秒
留神:
中国属于东八区,会把工夫减少8个小时
- 1970-01-01 08:00:00
把毫秒转换为日期:
- 1天 = 246060 = 86400秒 = 86400*1000=86400000毫秒
应用:
Date类的带参数构造方法
Date date = new Date();
Date();//获取以后零碎的工夫和日期
--------- Date date = new Date(0L);
Date(long date);//传递毫秒值,把毫秒值转化成Date日期
----------- Date date = new Date();
long time = date.getTime();
long getTime() 把日期转换成毫秒(相当于System.currentTimeMillis()办法)
返回自1970年1月1日 00-00-00GMT 以来此Date 对象示意的毫秒数。
DateFormat类
java.text.DateFormat:是日期/工夫格式化子类的抽象类
作用:
- 格式化(也就是日期 -> 文本),解析(文本->日期)
成员办法:
- String format(Date date) 依照指定的模式,把Date日期,格式化为合乎模式的字符串
- Date parse(String source) 把合乎模式的字符串,解析为Date日期
- DateFormat类是一个抽象类,无奈间接创建对象应用,能够应用DateFormat类的子类
<pre style=”margin: 0px; padding: 0px; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;”>java.text.SimpleDateFormat extends DateFormat</pre>
应用DateFormat类中的办法format,把日期格式化为文本
应用步骤:
- 创立simpleDateFormat对象,构造方法中传递指定的模式
- 调用SimpleDateFormat对象中的办法format,依照构造方法指定的模式,把Date日期格式化为合乎模式的字符串(文本)
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
Date date = new Date();
String d = sdf.format(date);
Calendar类
介绍:
java.util.Calendar类;日历类
- Calendar类是一个抽象类,里边提供了很多操作日历字段的办法(YEAR、MONTH、DAY_OF_MONTH、HOUR)
- Calendar类无奈间接创建对象应用,里边有一个静态方法叫getInstance(),该办法返回了Calendar类的子类对象
- static Calendar getInstance() 应用默认时区和语言环境取得一个日历。
Calendar c = Calendar.getInstance();//多态
Calendar类的罕用成员办法:
- public int get(int field);返回给定日历字段的值。
- public void set(int field,int value);将给定的日历字段设置为给定值
- public abstract void add(int field, int amount);依据日历的规定,为给定的日历字段增加或减去指定的工夫量。
- public Data getTime();返回一个示意次Calendar工夫值(从历元到当初的毫秒偏移量)的Date对象。
public int get(int field);返回给定日历字段的值。
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
///public void set(int field,int value);将给定的日历字段设置为给定值 //设置年为9999 //设置月为9月
c.set(Calendar.YEAR,9999);
c.set(Calendar.MONTH,9); //减少年
c.add(Calendar.YEAR,2); //把日历对象,转换为日期对象
Date date=c.getTime();
Syetem类
java.lang.System类中提供了大量的静态方法,能够获取与零碎相干的信息或零碎级操作,在System类的API文档中,罕用的办法有;
- public static long currentTimeMillis();返回以毫秒为单位的以后工夫。
- public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int Length);将数组中指定的数据拷贝到另一个数组中。
参数:
- src – 源数据
- srcPos – 源数据中的起始地位(起始索引)。
- dest – 指标数组。
- destPos – 指标数据中的起始地位
- Length – 要复制的数组元素的数量。
StringBuilder类
StringBuilder类
字符串缓冲区,能够进步字符串的操作效率(看成一个长度能够变动的字符串)
底层也是一个数组,然而没有被final润饰,能够扭转长度
byte[] value = new byte[16];
StringBuilder在内存中始终是一个数组,占用空间少,效率高
如果超出了StringBuilder的容量,会主动的扩大。
比拟与:String类
字符串是常量;它们的值在创立之后不能更改。
字符串的底层是一个被final润饰的数组,不能扭转,是一个常量
private final byte[] value;
进行字符串的相加,内存中就会有多少个字符串,占用空间多 ,效率低下
java.lang.StringBuilder类:字符串缓冲区,能够进步字符串的效率
构造方法:
- StringBuilder()结构一个不带任何字符的字符串生成器,其初始容量为16个字符。
- StringBuilder(String str) 结构一个字符串生成器,并初始化为指定的字符串内容。
StringBuilder的罕用办法:
- public StringBuilder append(…):增加任意类型数据的字符串模式,并返回以后对象本身。
StringBuilder和String能够互相转换;
- String -> StringBuilder:能够应用StringBuilder的构造方法
- StringBuilder(String str)
- StringBuilder-> String:能够应用StringBuilder中的toString办法
- public String toString();
包装类
包装类:
根本数据类型,应用起来十分不便,然而没有对应的办法来操作这些根本类型的数据
能够应用一个类,把根本类型的数据装起来,在类中定义一些办法,这个类叫做包装类,
咱们能够应用类中的办法来操作这些根本类型的数据。
装箱:把根本类型的数据,包装到包装类中(根本类型的数据->包装类)
构造方法:
- Integer(int value)结构一个新调配的 Integer对象,它示意指定的 int值。
- Integer(String s)结构一个新调配的 Integer对象, 它示意String参数所批示的 int值。
传递的字符串,必须是根本类型的字符串,否则会抛出异样”100″正确 “a”抛异样
静态方法:
- static Integer valueOf(int i)返回一个示意指定的int值的Integer实例。
- static Integer valueOf(String s)返回保留指定的String的值的Integer对象。
拆箱:在包装类中取出根本类型的数据(包装类->根本类型的数据)
成员办法:
- int intValue()以int 类型返回该Integer的值。
主动装箱和主动拆箱:根本类型的数据和包装类之间能够主动的互相转换
JDK1.5 之后呈现的新个性
主动装箱:间接把int类型的整数赋值包装类
- Integer in = 1; 就相当于 Integer in = new Integer(1);
主动拆箱:in是包装类,无奈直接参与运算,能够主动转换为根本数据类型,在进行计算
- int + 2;就相当于 in.inVale() + 2=3
in = in.intVale() + 2 = 3 又是一个主动装箱
留神:
- ArrayList汇合无奈间接存储整数,能够存储Integer包装类
- list.add(1);–>主动装箱 list.add(new Integer(1));
- int a = list.get(0);//–>主动拆箱 list.get(0).intValue();
根本类型与字符串类型之间的互相转换
根本类型->字符串(String)
1.根本类型的值+”” 最简略的办法(工作中罕用)
2.包装类的静态方法toString(参数),是Object类的toString()重载
- static String toString(int i) :返回一个示意指定整数的String对象。
3.String类的静态方法valueOf(参数)
- static String valueOf(int i) :返回int参数的字符串示意模式。
字符串(String)->根本类型
应用包装类的静态方法parseXXX(“字符串”);
- Integer类:static int parseInt(String s)
- Double类:static double parseDouble(String s)
发表回复