第六章、Java之API

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第六章——Java之APIAPIAPI就是ApplicationProgrammingInterface,叫做应用程序接口。为什么要有API。在实际编程当中,需要用到很多方法,比如:设计一个程序来控制火箭的发射(神州七号)指挥员可以使用该程序来使火箭点火升空,使得信号发送和传回。指挥员火箭发射程序信号传递程序信号传递类火箭发射类一些控制发射的方法一些控制信号传递的方法在Java中的类库里有一些已经编写好并且能直接实现的标准类。在程序设计中可以直接调用类库所提供的类和接口,可以大大提高编程效率。类库里的类和接口大多封装在特定的包里,每个包有不同的功能。部分常用包Java.applet:提供了创建applet所需的所有类Java.awt.*:提供创建图形界面所需的类Java.beans.*:提供了开发javabeans的类Java.io:提供了数据流等系统的输入和输出Java.lang.*:java的基本类库Java.math.*:提供整数算术和十进制算术的基本函数Java.net:提供了实现网络通信应用的所有类Java.util.*:提供了集合、时间和日期的等常用包Javax.swing.*:提供用户界面的组件,java用户界面的常用包Java.langJava.lang是java中使用最广泛的包,它所包括的类是其他包的基础,使用时由系统自动引用,不必用import语句进行引入。一、String与StringBuffer类String类是字符串类的标准格式,可以把定义的字符串通过String转换成字符串对象。String类中有很多构造函数。String():初始化半含空字符串的String对象String(char[]value):使字符串对象包含char类型数组的值。String(char[]value,intoffset,intcount):传入一个字符串型数组的值给String对象,从哪里传,传多少个。演示String类的定义。演示String类的多种定义。比较Stringa=“java”;Stringb=“java”;A和b是否代表两个对象?Stringa=newString(“java”);Stringb=newString(“java”);A和b是否代表两个对象?比较字符串S1.equals(s2):如果相等则返回ture。S1.equalsIgnoreCase(s2):同上,只不过是忽略大小写。S1.compareTo(s2):如果s1s2,则返回小于0的值;如果相等则返回0,如果s1s2则返回大于零的值。演示比较字符串。求字符串长度String类中的length(方法用来返回字符串的长度)演示返回字符串的长度。连接字符串用+号和concat方法可以连接字符串。例如:用+号和concat的混合方法把hello,java!这个字符串打印出来。演示连接字符串。复制字符串复制方法:S1.copyValueOf(data):将数组date的内容全部复制到字符串中。S1.copyValueOf(data,int起始地址,intcount):将数组data以起始地址开始长度为count的内容复制到字符串中。S1.getChar(int字符起始地址,int字符终止地址,data,int数组起始地址):将s1的内容复制到数组data中。Data=s1.toCharArray():将s1全部内容复制到字符数组data中。S2=s1.substring(int起始地址,int结束位置)演示复制字符串。查找字符串可以利用函数来进行查找字符串和子串,并确定它们的位置。S1.charAt(intindex):返回s1中index所对应的字符,index为下标号。S1.indexOf(intchar):返回字符char第一次出现的位置。S1.lastIndexOf(intchar):返回s1中char字符最后一次出现的位置。S1.indexOf(s2):返回s2在s1中第一次出现的位置。S1.lastIndexOf(s2):返回s2在s1中最后一次出现的位置。演示查找字符串。修改字符串S1.replace(oldchar,newchar):用新字符替代旧字符。S1.toLowerCase():将s1中的所有大写字母转化为小写字母。S1.toUpperCase():将s1中所有小写字母转化成大写字母。演示:修改字符串。StringBuffer类StringBuffer与String类相似,但是不同的是StringBuffer可以方便的在缓冲区被修改,被增加、替换字符,当完成字符串的调整之后,可以把其转换成标准字符串格式。构造函数:StringBuffer():长度为16个字符空缓冲字符串StringBuffer(intlength):长度为length的空缓冲字符串。StringBuffer(Stringstr):构造一个缓冲字符串,内容为字符串str,再加上16个字符的空间。StringBuffer类所产生的对象里的内容可以改变,例如:在程序设计中可以不断的向对象插入字符,直到最后结果时,则调用toString()来转换成String类。通过append、insert可以向该对象中添加字符串。演示创建StringBuffer对象。例:给x赋予字符串”abc”。Stringx=“a”+”b”+”c”;Stringx=newStringBuffer().append(“a”).append(“b”).append(“c”).toString();读取和改变StringBuffer中的字符可以利用方法。S1.setCharAt(intindex,charch):用ch替代s1中位置为index的字符。S1.replace(intstart,intend,s2):s1中从start开始(含)到end(不含)结束之前的字符串以s2来代替。S1.delete(intstart,intend):删除从start(含)开始到end(不含)结束之间的字符串。S1.delete(intindex):删除s1中index位置的字符演示改变StringBuffer字符串。String类的程序应用设计程序,要求可以实现输入字符串,假如输入bye时则退出程序,输入其他任何字符串都会被打印出来。(在程序运行结果中进行输入,用回车来执行输入字符完毕,然后判断是否为bye)分析思路1、键盘输入的字符存在哪里。2、接受的键盘输入是一个字符一个字符的输入,那么输入的字符串又以什么样的形式存储。3、程序设计的过程是什么?(一个字符输完之后,下一步会进行什么,假如遇到回车后,会进行什么,不遇到回车又会进行什么)4、需要几个变量来接受输进来的字符。注意1、定义一个字节型的数组可以存储输入的字符,但是在判断字符串内容的时候应该将数组里面所存的字符串赋给一个String类型。2、接受的是单个字符的输入,所以数组在一个一个字符存储的时候,不一定要存满,所以得有一个变量用来计数数组到底存到第几位。3、最后比较字符串内容的时候,用equals方法(注意用equalsIgnoreCase()可以在比较内容的时侯忽略大小写)基本数据类型的对象包装类除了基本数据类型的类,java还提供了相应的包装类,这样可以满足特殊的需要。例如:类中的很多方法接受的都是Object类型,这些方法接受的参数都是对象类型,同时又需要用这些方法来处理基本数据类型的数据,这时就用到包装类。包装类的种类8种常用的数据类型都有其对应的包装类:Boolean——BooleanByte——ByteChar——Charactershort——Shortint——Integerlong——Longfloat——Floatdouble——Double实际例子打印出星号组成的矩形。要求:在运行class文件时输入参数长、高就可以设置打印出星号矩形的长和高。思考1、在运行class时输入的参数到底是字符串类型的还是int类型的。2、怎样在运行时输入的参数就被转换成int类型的数据而参与下面的运算。3、怎么用添加字符串的形式来打印出星号(循环多少次就添加多少回*字符串)用哪个字符串类来存储星号。演示运行时设置宽和高。集合类集合类用来存储一组对象,其中每个对象都称之为元素,里面有Vector类,Enumeration接口,ArrayList类和Iterator接口,Collection等类和接口。一般在存入一组对象时可以用类似Vector类的对象来存储数据,然后通过接口Enumeration里面的方法来对这组数据进行处理。Vector和Enumeration例子将键盘中输入的一个数字序列中的每位数字存储在Vector对象中,然后在屏幕中打印出每位数字相加的结果。例如输入:1234,打印出10.分析:1、是否需要一个变量来存储键盘输入的每个字符,然后把这些字符存到Vector对象中2、怎么把一个整型的数据存到Vector对象中3、相加的问题:这些个数字如何累加,加完一个,指针如何指向下一个,而且全部加完后,又怎么样停止。演示:TestVector。注意:这些类都是外包的,所以要引用:Importjava.util.*;Collection接口与Iterator接口Collection接口的使用方法类似Vector类,可以往里面存储数据,可以通过方法来取出,通过方法来返回一个Iterator接口对象,这时存在里面的数据就被给了Iterator对象,然后通过方法来一个个取出。Iterator接口类似与Enumeration接口,没有它那么冗长的名字。Collection接口不能直接创建对象,所以得用实现了其接口的类来创建对象,为ArrayList。所以可以同样用ArrayList类和Iterator接口可以同样处理把数据存入并且进行处理。看ArrayList代码。ArrayList类同时实现了List接口(同样为集合类接口),由于顺序关系,可以对List接口的对象进行排序。看List类的排序。Hashtable与Properties在Hashtable对象中可以动态的存储一系列对象,同时可以对存储的每一个对象(值)都安排另一个对象(关键字)与之相关联。其中可以通过对关键字来对值进行检索。存储数据:put(Objectkey,Objectvalue)检索数据:get(Objectkey)演示Hashtable简单测试可以把值定义成一个字符串对象。NewString(“value”);实际应用此类实现一个哈希表,该哈希表将关键字映射到相应的值。任何非null对象都可以用作键或值。为了成功地在哈希表中存储和获取对象,用作键的对象必须实现hashCode方法和equals方法。hashCode方法返回的是一个由其里面对象地址转化来的一个值。注意:在Object类中也有equals和hashCode方法。覆盖equals方法:因为比较所用关键字和Hashtable中存储的某个关键字是否相同,假如判断不出这两个关键字对象是否相同,则不行。覆盖hashCode方法:因为即使内容相同的两个对象,存储的地址不一样,返回的hashCode值也不一样,所以需要覆盖。实例应用关键字和值的对应关系:假如关键字为一个对象,里面有年龄和姓名两个变量,假如这两个变量都相同,那么就认为他是同一个人,代表是同一个对象,这时就会返回该关键字所对应的值。注意:怎么判断假如在姓名和年龄都相等的前提下,就属于同一个对象,这样才会使得关键字是同一个对象。Properties类Properties类是Hashtable类的子类。它不但可以具有Hashtable的方法,还增加了将Hashtable对象中的关键字和值保存到一个

1 / 39
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功