java api(java常用api接口汇总)

运行Java程序时,虚拟机装载程序的class文件所运用的JavaAPIclass文件。所有被装载的class文件(包含从应用程序中和从JavaAPI中提取的)和所有现已装载的动态库(包含本地办法)一起组成了在Java虚拟机上运行的整个程序。在一个渠道能够支持Java程序以前,有必要在这个特定渠道上明确地完成API的功用。为拜访主机上的本地资源,JavaAPI调用了本地办法。因为JavaAPIclass文件调用了本地办法,Java程序就不需要再调用它们了。通过这种办法,JavaAPIclass文件为底层主机提供了具有渠道无关性、标准接口的Java程序。对Java程序而言,无论渠道内部怎么,JavaAPI都会有相同的表现和可预测的行为。正是因为在每个特定的主机渠道上明确地完成了Java虚拟机和JavaAPI,因此,Java程序本身就能够成为具有渠道无关性的程序。
图片[1]-java api(java常用api接口汇总)-小白之家,java常用api接口汇总,API全称是ApplicationProgrammingInterface(应用程序编程接口).例如:

编写一个机器人程序去操控机器人踢足球,程序就需求向机器人宣布向前跑、向后跑、射门、抢球等各种指令,机器人厂商一定会供给一些用于操控机器人的接口类,这些类中界说好了操作机器人各种动作的办法。其实,这些接口类便是机器人厂商供给给应用程序编程的接口,咱们把这些类称为API。

JavaAPI:指的便是JDK中供给的各种功用的Java类.

这些类将底层的完成封装了起来,咱们不需求关怀这些类是怎么完成的,只需求学习这些类怎么运用即可.

咱们能够经过协助文档来学习这些API怎么运用.

回忆:

API本意指的是JDK中供给的各种功用的Java类.

但实际开发中,咱们常说的翻开API指的不是JDK供给的Java类,而是API协助文档.

API协助文档就相当于阐明书,是用来介绍JDK供给的各个接口类的功用的,从而协助咱们快速上手运用.

1.2协助文档的运用过程

右键翻开该文档.

找到索引选项卡中的输入框.

在输入框中输入要查找的类,例如Random.

看类在哪个包下.假设是java.lang包下的类,则无需导包,能够直接运用.

而其他包下的类和接口,在运用前必须先导包.

大概的看下类的阐明,知道该类是用来干嘛的即可.

看结构办法,依据指定的参数列表,创立该类的目标.

看成员办法,要点看(回来值,办法名,参数列表,办法描绘)

1.3示例:Scanner的用法

需求

依照协助文档的运用过程学习Scanner类的运用,并完成键盘录入一个字符串,然后把成果输出在操控台上.

2.Object类

2.1概述

Object类是所有类的父类,所有的类都直接或许间接继承自Object类.

2.2结构办法

publicObject()//Object类中只需一个空参结构.

思考题:回想咱们之前说过的一句话为什么子类的结构办法的第一行,默许都是super(),而不是带参结构呢?

2.3成员办法

publicStringtoString();

解说:回来目标的字符串表明办法(即:地址值),无意义,建议子类重写该办法.

publicbooleanequals(Objectobj);

解说:比较两个目标是否持平,默许比较的是地址值,无意义,子类一般都会重写该办法.

留意:实际开发中,咱们以为假设同一个类的两个目标,各个特色值都相同,那么它们便是同一个目标.

例如:

//尽管s1和s2目标的地址值不同,可是它们的特色值都相同,所以实际开发中咱们以为它们是同一个目标.Students1=newStudent(“刘亦菲”,33);Students2=newStudent(“刘亦菲”,33);

2.4示例一:toString办法演示

需求

界说学生类Student,特色为姓名和年纪,生成对应的空参,全参,getXxx()和setXxx()办法.

在StudentTest测验类中,创立学生类目标并直接打印,调查程序的运转成果.

2.5示例二:equals()办法演示

需求

界说学生类Student,特色为姓名和年纪,生成对应的空参,全参,getXxx()和setXxx()办法.

在StudentTest测验类中,创立两个学生类目标,特色值都是:刘亦菲,33

并直接打印,调查程序的运转成果.

回忆:==和equals()办法的差异是什么?

3.String类

3.1概述

String代表字符串类,即:由多个字符组成的一串数据.字符串的实质便是一个字符数组.

3.2结构办法

publicString()

解说:创立一个空白字符串目标,不包括任何内容.

publicString(Strings)

解说:把字符串数据封装成字符串目标.

publicString(char[]value)

解说:把字符数组的数据封装成字符串目标.

publicString(char[]value,intindex,intcount)

解说:把字符数组的一部分数据封装成字符串目标.

publicString(byte[]bys)

解说:把字节数组的数据封装成字符串目标.

publicString(byte[]bys,intindex,intcount)

解说:把字节数组的一部分数据封装成字符串目标.

3.3示例一:创立字符串目标

需求

别离经过上述的三种办法创立字符串目标.

在main办法中,经过输出句子,直接打印创立好的字符串目标.

提示:输出句子直接打印目标,默许调用了目标的toString()办法.

回忆:最常用的创立字符串目标的办法是:Strings=”abc”;

3.4String创立目标的特色

3.4.1创立字符串目标的办法

经过new创立的字符串目标,每一次new都会申请一个内存空间,尽管内容相同,可是地址值不同.

char[]chs={‘a’,’b’,’c’};Strings1=newString(chs);Strings2=newString(chs);//这儿的s1和s2的地址值肯定是不同的.

经过””办法创立的字符串,只需字符序列相同(次序和大小写),不管在程序代码中呈现几回,JVM都只会创立一个String目标,并在字符串池中保护.

Strings1=”abc”;Strings2=”abc”;//这两个目标在内存中其实是同一个目标.

3.4.2示例

需求

界说字符数组chs,初始化值为:’a,’b’,’c’,这三个字符.

将其别离封装成s1,s2这两个字符串目标.

经过==判别s1和s2这两个字符串目标是否相同.

直接经过””的办法创立两个字符串目标s3和s4.

经过==判别s3和s4这两个字符串目标是否相同.

3.5字符串的比较

3.5.1涉及到的办法

publicbooleanequals(Objectobj)

解说:比较两个字符串的内容是否相同,差异大小写.即:”a”和”A”不是同一个字符串.

publicbooleanequalsIgnoreCase(Strings)

解说:比较两个字符串的内容是否相同,不差异大小写.即:”a”和”A”是同一个字符串.

3.5.2示例演示

需求

界说字符数组chs,初始化值为:’a,’b’,’c’,这三个字符.

将其别离封装成s1,s2这两个字符串目标.

直接经过””的办法创立两个字符串目标s3和s4.

经过==别离判别s1和s2,s1和s3,s3和s4是否相同.

经过equals()别离判别s1和s2,s1和s3,s3和s4是否相同.

经过equalsIgnoreCase()判别字符串abc和ABC是否相同.

3.6示例二:模仿用户登录

3.6.1需求

模仿用户登录,只给3次时机,登录成功则提示”欢迎您,***”.

登录失利则判别是否还有登录时机,有则提示剩下登录次数,没有则提示”您的账号已被确定”.

假定初始化账号和暗码别离为:”传智播客”,”黑马程序员”.

3.6.2参阅代码

3.7示例三:遍历字符串

需求

键盘录入一个字符串,运用程序完成在操控台遍历打印该字符串.

提示

publicintlength()

解说:获取字符串的长度.

publiccharcharAt(intindex)

解说:依据索引,获取该索引对应的字符.

3.8示例四:统计字符次数

需求

键盘录入一个字符串,统计该字符串中大写字母字符,小写字母字符,数字字符呈现的次数.

留意:不考虑其他字符,例如@,!,\,/等

3.9事例五:字符串拼接

需求

界说办法arrayToString(),把int数组的元素依照指定的格局拼接成一个字符串,并回来.

在main办法中,调用上述的办法.

例如:数组为int[]arr={1,2,3},则拼接后,成果为:[1,2,3]

3.10事例六:字符串回转

需求

界说办法reverse(),完成字符串的回转.

在main办法中键盘录入一个字符串,调用上述的办法后,在操控台输出成果.

例如:键盘录入abc,输出成果cba.

提示:用for循环,倒序遍历数组,然后拼接每一个元素即可.

3.11经过协助文档检查String中的办法

publicbooleanequals(Objectobj)

解说:比较两个字符串的内容是否相同,差异大小写.

publiccharcharAt(intindex)

解说:依据给定的索引,获取其对应的字符.

publicintlength()

解说:获取字符串的长度.

4.StringBuilder类

剖析如下代码,履行功率是高仍是低呢?

Strings=”hello”;

s+=”world”;

System.out.println(s);

解说:

假设字符串进行拼接操作,每次拼接,都会构建一个新的String目标,即耗时,又浪费内存空间.而这种操作还不可避免,.那有没有一种比较好的办法来处理这个问题呢?

答案是肯定的,咱们能够经过Java供给的StringBuilder类来处理这个问题.

4.1概述

StringBuilder类在java.lang包下,无需导包,能够直接运用.

StringBuilder是一个可变的字符序列,也叫字符串缓冲区类.

咱们能够把它看做一个容器,这儿的可变指的是StringBuilder目标中的内容是可变的

String和StringBuilder之间的差异

String:内容是不可变的.

StringBuilder:内容是可变的.

4.2结构办法

publicStringBuilder()

解说:创立一个空白可变字符串目标,它不含有任何内容.

publicStringBuilder(Stringstr)

解说:依据字符串的内容,来创立可变字符串目标.

4.3示例一:StringBuilder入门

需求

经过上述的两种办法,创立StringBuilder目标.

在操控台直接打印上述创立好的两个目标,并调查成果.

4.4增加和回转办法

publicStringBuilderappend(恣意类型)

解说:增加数据,并回来目标自身.

publicStringBuilderreverse()

解说:回来相反的字符序列.

需求

经过空参结构创立StringBuilder类的目标sb.

经过append()办法,往sb目标中增加”hello”,然后用sb2目标接纳.

打印目标sb和sb2的成果,并调查.

经过reverse()办法,来回转上述的内容.

参阅代码

略.

4.5StringBuilder和String之间的彼此转化

StringBuilder转化成String

解说:能够经过StringBuilder#toString()办法直接完成.

String转成StringBuilder

解说:经过StringBuilder类的结构办法完成,`publicStringBuilder(Strings)

需求

界说空参不可变StringBuilder目标,往里面增加完”hello”字符串后,再将其转成String类型的目标.

将String字符串转成StringBuilder目标,然后打印.

4.6事例二:拼接字符串升级版

需求

界说办法arrayToString(),把int数组的元素依照指定的格局拼接成一个字符串,并回来.

在main办法中,调用上述的办法.

例如:数组为int[]arr={1,2,3},则拼接后,成果为:[1,2,3]

4.7事例三:字符串回转

需求

界说办法reverse(),完成字符串的回转.

在main办法中键盘录入一个字符串,调用上述的办法后,在操控台输出成果.

例如:键盘录入abc,输出成果cba.

提示:用for循环,倒序遍历数组,然后拼接每一个元素即可.

4.8经过协助文档检查StringBuilder中的办法

publicStringBuilderappend(恣意类型)

解说:增加数据,并回来目标自身.

publicStringBuilderreverse()

解说:回来相反的字符序列.

publicStringtoString()

解说:用来将StringBuilder目标,转成其对应的字符串办法的.

5.冒泡排序

5.1需求

已知数组int[]arr={25,69,80,57,13},请编写代码对齐进行升序排序.

即:排序后成果为:arr={13,25,57,69,80};

5.2原理

相邻元素两两比较,大的往后走,第一轮比较完毕后,最大值就呈现在了最大索引处.

5.3图解

5.4参阅代码

//事例:演示冒泡排序.publicclassDemo01{publicstaticvoidmain(String[]args){//1.界说数组,记载要排序的元素.int[]arr={25,69,80,57,13};//2.经过外循环,操控比较的轮数.for(inti=0;i<arr.length-1;i++){//3.经过内循环,操控每轮比较的次数.for(intj=0;j<arr.length-1-i;j++){//4.假设前一个元素比后边的元素大,就叫唤它们的位置.if(arr[j]>arr[j+1]){inttemp=arr[j];arr[j]=arr[j+1];arr[j+1]=temp;}}}//5.for循环履行完毕后,数组就已经排好次序了,直接打印即可.for(inti=0;i<arr.length;i++){System.out.println(arr[i]);}}}

6.Arrays类

6.1概述

它是针对数组进行操作的东西类。供给了把数组转成字符串,对数组排序等功用。

东西类解说:

结构办法私有化.

成员办法都是静态的.

6.2成员办法

publicstaticStringtoString(int[]arr)

解说:把int类型的数组转成其对应的字符串办法.

publicstaticvoidsort(int[]arr)

解说:对给定的int数组,依照元素升序的次序进行排序.

6.3示例

需求

已知数组int[]arr={25,69,80,57,13}.

经过Arrays#sort()办法,对其升序摆放.

打印排序后的成果.

参阅代码

publicclassDemo02{publicstaticvoidmain(String[]args){//1.界说数组int[]arr={25,69,80,57,13};//2.打印排序前的成果System.out.println(“排序前:”+Arrays.toString(arr));//3.对数组进行升序摆放.Arrays.sort(arr);//4.打印排序后的成果.System.out.println(“排序前:”+Arrays.toString(arr));}}

6.4Arrays类的结构办法问题

咱们知道,假设一个类中没有结构办法,那么系统将供给一个空参结构办法.而咱们在协助文档中没有看到Arrays类的结构办法.这是为什么呢?难道Arrays类真的没有结构办法吗?

答案是:

Arrays类中有一个私有的空参结构办法,这样做的目的是:不让用户经过结构办法来创立Arrays类的目标.

由于Arrays类的成员都是静态的,能够经过类名点的办法直接调用.

7.包装类

7.1概述

假设让咱们判别一个数据是否在int范围内,首要咱们的得知道int的范围,在前边咱们解说数据类型的时候说过,这个范围是:-2147483648~2147483647.可是这个数据程序员不一定能记得住.于是咱们就想着,假设有个变量或许常量能记载这个值该多好呢?

其实这个需求,咱们就能够经过Integer类的MAX_VALUE和MIN_VALUE两个常量来完成.

publicstaticfinalintMIN_VALUE

解说:获取int类型所能表明的最小值

publicstaticfinalintMAX_VALUE

解说:获取int类型所能表明的最大值

为了对根本类型进行更多更便利的操作,Java就针对每一种根本类型供给了一个对应的引证类型,这便是包装类.

它们的对应联系如下:

根本类型对应的包装类

byteByte

shortShort

charCharacter

intInteger

longLong

floatFloat

doubleDouble

booleanBoolean

7.2最常见用法

包装类最常见的用法便是用于该类型对应的根本类型和字符串之间进行彼此转化.

例如:

Byte用于byte和String之间的彼此转化.

Integer用于int和String之间的彼此转化.

Double用于double和String之间的彼此转化.

7.3Integer类

7.3.1概述

Integer类是根本类型int所对应的包装类,该类供给了多个办法,能在int类型和String类型之间互相转化,还供给了处理int类型时非常有用的其他一些常量和办法.

7.3.2结构办法

publicInteger(intvalue)

解说:把int类型的数据封装成其对应的Integer目标.

publicInteger(Strings)

解说:把字符串类型的整数封装成其对应的Integer目标.

留意:这儿传入的必须是纯数字类型的字符串.

7.3.3示例

需求

经过上述的两个结构办法,别离创立Integer类型的目标.

在main办法中,打印创立好的Integer目标.

7.3.4int类型和String类型的彼此转化

int类型->String类型

办法一:直接在后边拼接””即可.

Strings1=10+””;

办法二:经过String#valueOf()办法.

//publicstaticStringvalueOf(inti)

Strings1=String.valueOf(10);

String类型->int类型

办法一:经过String->Integer->int思路来完成.

//1.先把String类型的目标转成Integer类型的目标.

Strings1=”10″;

Integeri1=newInteger(s1);

//2.把Integer类型的目标转成int类型.

intnum=i1.intValue();

办法二:经过Integer#parseInt()办法来完成.

Strings1=100;

intnum=Integer.parseInt(s1);

7.3.5示例

需求

已知字符串Strings=”9127453850″;

请经过代码完成终究输出成果是:”27,38,45,50,91″

提示

经过String类的split(Stringregex)办法,能够依照指定字符切开字符串.

7.3.6主动拆装箱

把根本类型的数据封装成其对应的包装类型,则称之为主动装箱.

//示例代码

Integerii=100;//主动装箱.

把包装类型的目标拆解成其对应的根本类型,则称之为主动拆箱.

Integerii=100;

i1+=200;//这排水口//主动装箱.

留意:主动拆装箱都是JDK5的新特性.

需求

编写代码演示JDK1.5的新特性,主动拆装箱.

8.Date类

8.1概述

Date类表明特定的瞬间,精确到毫秒.它是java.util包下的类,用之前需求先导包.

8.2结构办法

publicDate();

解说:依据当时系统时刻,获取其对应的Date目标.

publicDate(longdate);

解说:依据给定的整数,获取其对应的Date目标.

8.3事例:Date入门

需求

经过上述的两种办法创立Date目标.

在main办法中,打印上述创立好的Date目标,并调查成果.

8.4成员办法

publiclonggetTime()

解说:获取毫秒值.

publicvoidsetTime(longtime)

解说:设置时刻,单位是毫秒值.

需求

编写代码,测验上述的两个办法.

9.SimpleDateFormat类

9.1概述

SimpleDateFormat是一个以与言语环境有关的办法来格局化和解析日期的详细类。它允许进行格局化和解析。

SimpleDateFormat类,叫日期格局化类,专门用来格局化和解析日期的.

格局化(日期->文本),即:Date->String

解析(文本->日期),即:String->Date

9.2结构办法

publicSimpleDateFormat()

解说:依据空参结构,创立SimpleDateFormat类的目标.

publicSimpleDateFormat(Stringpattern)

解说:依据给定的模板,创立其对应的SimpleDateFormat类的目标.

9.3成员办法

publicfinalStringformat(Datedate)

解说:用来格局化日期的.

publicDateparse(Stringsource)

解说:用来解析字符串办法的日期的.

9.4示例一:格局化日期

需求

把当时时刻目标,依照2020年3月4日00:00:00格局进行打印.

留意:格局化日期的时候,模板咱们是能够自界说的.

9.5示例二:解析日期字符串

需求

已知字符串Strings=”2020年3月4日00:00:00″;

将上述的字符串转成其对应的Date目标后,直接打印到操控台上.

留意:解析日期字符串时,SImpleDateFormat目标的模板要和被解析的字符串格局保持一致.

9.6示例三:东西类的界说

9.6.1需求

界说东西类DateUtils,该类有两个办法:date2String(),string2Date(),别离用来格局化,解析日期.

在测验类中,测验上述的两个办法.

10.Calendar类

10.1概述

Calendar类叫:日历类,是便利咱们操作日期的.它里面的功用大多数是用来代替java.util.Date类的功用的.

10.2结构办法

Calendar类能够理解为是东西类,由于它是一个抽象类,所以外界无法经过new的办法创立本类目标.

问题:怎么创立Calendar类的目标呢?

答案:经过Calendar#getInstance()办法完成.

10.3示例一:Calendar入门

需求经过上述的办法,创立Calendar目标.

10.4成员变量

publicstaticfinalintYEAR

解说:表明年份.

publicstaticfinalintMONT

解说:表明月份.

publicstaticfinalintDATE

解说:表明年中的某一天.

publicstaticfinalintDAYOFMONTH

解说:表明月中的某一天.

publicstaticfinalintDAYOFWEEK

解说:表明星期中的某一天.

10.5成员办法

publicstaticCalendargetInstance();

解说:创立Calendar类型的子类目标.

publicintget(intfield)

解说:依据日历字段,获取其对应的值.

publicvoidset(intyear,intmonth,intday)

解说:设置时刻为指定的年,月,日.

publicvoidadd(intfield,intcount)

解说:修改指定的时刻为指定的偏移量,例如:往前推2天,推3个月,往后推2年.

10.6示例二:获取指定的年月日

需求

经过上述的办法,获取当时的年,月,日信息.

打印成果.

10.7事例三:获取某年的2月有多少天

需求

提示用户录入年份.

计算该年的2月有多少天,并将成果打印到操控台上.

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论