Java API教学ppt课件Java程序设计案例教程.pptx
《Java API教学ppt课件Java程序设计案例教程.pptx》由会员分享,可在线阅读,更多相关《Java API教学ppt课件Java程序设计案例教程.pptx(151页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Java API 教学课件Java程序设计案例教程5.1.1 什么是APIAPI(Application Programming Interface)指的是应用程序编程接口。假设使用 Java语言编写一个机器人程序去控制机器人踢足球,程序就需要向机器人发出向前跑、向后跑、射门、抢球等各种命令,没有编过程序的人很难想象这样的程序该如何编写。但是对于有经验的开发人员来说,知道机器人厂商一定会提供一些用于控制机器人的 Java类,这些类中定义好了操作机器人各种动作的方法。其实,这些 Java 类就是机器人厂商提供给应用程序编程的接口,通常把这些类称为 API。本章涉及的 Java API 指的就是J
2、DK 中提供的各种功能的 Java 类。5.1.1 什么是API简单来说,我们主要学习的是 Java 官方给我们提供好的一些类。在这些类里面有对应不同的方法,可以去实现不同的功能。所以 API 的学习思路是这样的,有一些类我们想要调用人家写好的方法,那么前提条件是要有对象,所以首先要学习这些类有哪些构造方法,通过构造方法先创建对象,有了这些对象以后再去调用这些类的成员方法。总之,Java API 就是 Java 提供给我们使用的类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用。API使用步骤分为以下几步:(1)打开帮助文档。本教材提供 1 个帮助文档
3、“jdk api 1.8_google.CHM”。打开该帮助文档,如右图。5.1.2 API使用步骤(2)找到索引,看到搜索框,如下图。5.1.2 API使用步骤(3)你要学习什么内容,就在搜索框里面输入什么内容。以 Random 类举例,在搜索框中输入“Random”,然后回车,如右图。5.1.2 API使用步骤(4)看包。java.lang 包下的类在使用的时候是不需要导包的。其他包都需要导包。5.1.2 API使用步骤如上图所示,Random 是在 util 包下,因此在使用该类时,需要导包。在类之前需要书写如下代码,格式如下:import java.util.Random5.1.2 A
4、PI使用步骤(5)看类的描述。Random 类是用于生成随机数的类。5.1.2 API使用步骤(6)看构造方法。如下图。5.1.2 API使用步骤如上图,有 2 个构造方法,一个是无参构造,另一个是带参构造。说明有 2 种创建对象的方式,其中无参构造是创建一个新的随机生成器,带参构造是使用单个 long 种子创建的一个新的随机生成器。接下来使用无参的构造创建对象,格式如下:Random r=new Random();5.1.2 API使用步骤(7)看成员方法。成员方法有很多,接下来以一个方法举例,如下图。5.1.2 API使用步骤(7)由上图可知,首先要了解该方法的功能,该方法是用来产生一个包
5、含 0,不包含指定值的随机数,即产生 0,bound)之间的随机数。在调用方法时,需要看以下几点:1)看返回值类型:人家返回什么类型,你就用什么类型接收。2)看方法名:名字不要写错了。3)看形式参数:人家要几个参数,你就给几个,人家要什么数据类型,你就给什么数据类型。5.1.2 API使用步骤看完上述 3 点,编写出如下代码:int number=r.nextInt(100);显然,上述代码产生一个 0,100)之间的随机数。至此,API 的使用已经讲完了,之后,我们在学习使用一个类的时候,就可以根据上面的 7 个步骤进行。详细的 Random 代码可以参考 5.4.2 节中的 Random
6、类的具体讲解。5.1.2 API使用步骤5.2 字符串类在程序开发中经常会用到字符串,所谓字符串就是指一连串的字符,它是由许多单个字符连接而成的,如多个英文字母所组成的一个英文单词。字符串中可以包含任意字符,这些字符必须包含在一对双引号“”之内,例如“abc”。Java中定义了三个封装字符串的类,分别是String、StringBuffer和StringBuilder,它们位于java.lang包中,并提供了一系列操作字符串的方法,这些方法不需要导包就可以直接使用。5.2.1 String类的初始化在使用 String 类进行字符串操作之前,首先需要对 String 类进行初始化。在 Java
7、 中可以通过以下两种方式对 String 类进行初始化:(1)使用字符串常量直接初始化一个 String 对象,具体代码如下:String str1=abc;由于 String 类比较常用,所以提供了这种简化的语法,用于创建并初始化 String 对象,其中 abc 表示一个字符串常量。5.2.1 String类的初始化(2)使用 String 类的构造方法初始化字符串对象。String 类的常见构造方法见下表。5.2.1 String类的初始化接下来通过一个案例学习String类的使用。5.2.1 String类的初始化程序运行结果如下图。由运行结果可知,“+”运算符在字符串中起到连接的作用
8、。另外,字符串是一种特殊的引用数据类型,直接输出字符串对象就是输出该对象的数据。5.2.2 String类的常见操作在实际开发中,String 类的应用非常广泛,灵活运用 String 类是非常重要的。接下来,我们来学习 String 类的成员方法。打开 API 文档,如右图。5.2.2 String类的常见操作上图只列举了 String 类的部分成员方法,String 类还有很多成员方法。如果按照API 文档一个一个从头往下学习成员方法,相信很多同学都已经混乱了,因为方法太多了,很难全部记住。为了帮助大家更好地记忆和使用这些方法,这里将一些重要的方法分为 4 类进行讲解。5.2.2 Stri
9、ng类的常见操作1字符串的判断操作操作字符串时,经常需要对字符串进行一些判断,如判断字符串是否以指定的字符串开始、结束,是否包含指定的字符串,字符串是否为空等。5.2.2 String类的常见操作字符串常用的判断方法见下表。5.2.2 String类的常见操作接下来通过一个案例来演示字符串的判断操作:5.2.2 String类的常见操作程序运行结果如下图。5.2.2 String类的常见操作在程序中可以通过“=”和equals()两种方式对字符串进行比较,但这两种方式有明显的区别。equals()方法用于比较两个字符串中的字符是否相等,=方法用于比较两个字符串对象的地址是否相同。也就是说,对于
10、两个内容完全一样的字符串对象,使用equals判断的结果是true,使用=判断的结果是false。5.2.2 String类的常见操作String str1=new String(abc);String str2=new String(abc);/结果为false,因为str1和str2是两个对象System.out.println(str1=str2);/结果为true,因为str1和str2字符内容相同System.out.println(str1.equals(str2);5.2.2 String类的常见操作2字符串的获取功能在Java程序中,需要对字符串进行一些获取的操作,如获得字符串
11、长度、获得指定位置的字符等。5.2.2 String类的常见操作字符串常用的获取方法见下表。5.2.2 String类的常见操作接下来通过一个案例来学习字符串的获取方法:5.2.2 String类的常见操作程序运行结果如下图。5.2.2 String类的常见操作3字符串的转换操作程序开发中,经常需要对字符串进行转换操作。例如,将字符串转换成数组的形式,将字符串中的字符进行大小写转换等。5.2.2 String类的常见操作字符串常用的转换方法见下表。5.2.2 String类的常见操作接下来通过一个案例来学习字符串的转换方法:5.2.2 String类的常见操作程序运行结果如下图。静态方法 va
12、lueOf()方法将一个 int 类型的整数转换为字符串。如果今后对整数操作比较麻烦,可以先将其转换为字符串,然后调用字符串的一些成员方法即可。5.2.2 String类的常见操作4.字符串类的替换、去除空格以及分割操作程序开发中,经常会对字符串进行一些替换和去除多余空格,以及分割等操作,方法见下表。5.2.2 String类的常见操作5.2.2 String类的常见操作程序运行结果如下图。5.2.2 String类的常见操作trim()方法只能去除两端的空格,不能去除中间的空格。若想去除字符串中间的空格,需要调用String类的replace()方法。注 意【任务5-1】模拟用户登录在使用一
13、些 App 时,通常都需要填写用户名和密码。用户名和密码输入都正确才会登录成功,否则会提示用户名或密码错误。本任务要求编写一个程序,模拟用户登录。程序要求如下:(1)用户名和密码正确,提示登录成功。(2)用户名或密码不正确,提示“用户名或密码错误”。(3)总共有 3 次登录机会,在 3 次内(包含 3 次)输入正确的用户名和密码后给出登录成功的相应提示。超过 3 次用户名或密码输入有误,则提示登录失败,无法再继续登录。【任务5-2】字符串拼接本任务要求编写一个程序,将数组按照指定格式拼接成字符串。例如,给定数组arr=1,2,3,将其拼接成 1,2,3。5.2.3 StringBuffer类由
14、于字符串是常量,因此一旦创建,其内容和长度是不可改变的。如果需要对一个字符串进行修改,则只能创建新的字符串,既耗时又浪费空间。为了对字符串进行修改,Java 提供了一个 StringBuffer 类(也称字符串缓冲区)。StringBuffer 类和 String 类最大的区别在于它的内容和长度都是可以改变的。StringBuffer 类似一个字符容器,当在其中添加或删除字符时,并不会产生新的 StringBuffer 对象。5.2.3 StringBuffer类StringBuffer类的常见的构造方法如下表。5.2.3 StringBuffer类StringBuffer类的常见的成员方法如
15、下表。5.2.3 StringBuffer类接下来通过一个案例学习StringBuffer类的常用方法。5.2.3 StringBuffer类5.2.3 StringBuffer类程序运行结果如下图。5.2.3 StringBuffer类StringBuffer 类和 String 类有很多相似之处,初学者在使用时很容易混淆。接下来针对这两个类进行对比,简单归纳一下两者的不同,具体如下:(1)String 类表示的字符串是常量,一旦创建后,内容和长度都是无法改变的(如果使用 String 类改变字符串内容,则需要重新创建对象)。而 StringBuffer 表示字符容器,其内容和长度可以随时修
16、改。在操作字符串时,如果该字符串仅用于表示数据类型,则使用String 类即可,但是如果需要对字符串中的字符进行增删操作,则使用 StringBuffer 类。5.2.3 StringBuffer类(2)String 类覆盖了 Object 类的 equals()方法,而 StringBuffer 类没有覆盖 Object 类的 equals()方法,具体示例如下:5.2.3 StringBuffer类(3)String 类对象可以用操作符“+”进行连接,而 StringBuffer 类对象之间不能,具体示例如下:5.2.4 StringBiuld类StringBuilder类和StringB
17、uffer类、String类有很多相似之处,初学者在使用时很容易混淆。接下来针对这三个类进行对比,简单归纳一下三者的不同。5.2.4 StringBiuld类StringBuilder类也可以对字符串进行修改。StringBuffer类和StringBuilder类的对象都可以被多次修改,并不产生新的未使用对象。StringBuilder类是JDK5中新加的类,它的使用方式,包括类中的成员方法,和StringBuffer都是完全一样的,然而,它与StringBuffer之间最大不同在于StringBuilder的方法是非线程安全的,也就是说StringBuffer不能被同步访问,而String
18、Builder可以。简而言之,如果是在多线程的环境下我们使用StringBuilder做字符串的拼接效率会更高一些,如果考虑多线程数据安全的情况,我们使用StringBuffer类。5.2.4 StringBiuld类下面通过一个案例对比StringBuilder和StringBuffer的运行效率。5.2.4 StringBiuld类程序运行结果如下图。从图5-17的运行结果可以看出三者的工作效率为StringBuilderStringBufferString。【任务5-3】模拟默认密码自动生成本例要求编写一个程序,模拟默认密码的自动生成策略,手动输入用户名,根据用户名自动生成默认密码。在生
19、成密码时,将用户名反转即为默认的密码。5.3 System类System 类对大家来说并不陌生,因为在之前所学知识中,需要打印结果时,使用的都是“System.out.println();”语句,这句代码中就使用了 System 类。System 类定义了一些与系统相关的属性和方法,它所提供的属性和方法都是静态的,因此,想要引用这些属性和方法,直接使用 System 类调用即可,所以对于 System 类来说,我们不需要学习它的构造方法。5.3 System类System类的常用方法如下表。5.3 System类1exit()方法该方法用于终止JVM。如果说Java虚拟机退出了,那么意味着整个
20、程序也就整个结束掉了。传入参数status的值,如果是0,表示程序正常终止,否则表示非正常终止。对于我们自己使用这个方法,一般参数就传入为0,代表通知Java虚拟机以正常的形式来结束程序。5.3 System类接下来通过一个案例来演示一下:5.3 System类运行结果如下:由运行结果可以看出,exit()方法之后的代码并没有执行。5.3 System类2currentTimeMillis()方法currentTimeMillis()方法用于获取当前系统的时间,返回值是long类型的值,该值表示当前时间与1970年1月1日0点0分0秒之间的时间差,单位是毫秒,通常也将该值称作时间戳。5.3 S
21、ystem类接下来通过一个for循环的求和的案例计算程序运行时所消耗的时间。5.3 System类程序运行结果如下图。5.3 System类3arraycopy()方法arraycopy()方法用于将数组从源数组复制到目标数组,声明格式如下:static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)5.3 System类关于声明格式中参数的相关介绍如下:src:表示源数组。dest:表示目标数组。srcPos:表示源数组中拷贝元素的起始位置。destPos:表示拷贝到目标数组的起始位置。leng
22、th:表示拷贝元素的个数。5.3 System类在进行数组复制时,目标数组必须有足够的空间来存放拷贝的元素,否则会发生角标越界异常。注 意5.3 System类接下来通过一个案例演示数组元素的拷贝。5.3 System类程序运行结果如下图。5.3 System类上述代码中,第34行代码创建了两个数组fromArray和toArray,分别代表源数组和目标数组,第5行代码中当调用arraycopy()方法进行元素拷贝时,由于指定了从源数组中索引为2的元素开始拷贝,并且拷贝4个元素存放在目标数组中索引为3的位置,因此,在打印目标数组的元素时,程序首先打印的是数组toArray的前三个元素20、21
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java API 教学ppt课件Java程序设计案例教程 教学 ppt 课件 程序设计 案例 教程
限制150内