孙卫琴《Java面向对象编程》配套PPT--java_base6_api

上传人:公**** 文档编号:567666311 上传时间:2024-07-22 格式:PPT 页数:28 大小:289.01KB
返回 下载 相关 举报
孙卫琴《Java面向对象编程》配套PPT--java_base6_api_第1页
第1页 / 共28页
孙卫琴《Java面向对象编程》配套PPT--java_base6_api_第2页
第2页 / 共28页
孙卫琴《Java面向对象编程》配套PPT--java_base6_api_第3页
第3页 / 共28页
孙卫琴《Java面向对象编程》配套PPT--java_base6_api_第4页
第4页 / 共28页
孙卫琴《Java面向对象编程》配套PPT--java_base6_api_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《孙卫琴《Java面向对象编程》配套PPT--java_base6_api》由会员分享,可在线阅读,更多相关《孙卫琴《Java面向对象编程》配套PPT--java_base6_api(28页珍藏版)》请在金锄头文库上搜索。

1、第8课 java.lang 包包 njava.lang包包含了主要的Java语言支持类, 它是Java语言编程设计的基础。n作为Java语言中所有类的祖先Object类,就定义在Java.lang包中.n另外还包含了包装类、String类、多线程支持类、Math类、System类等。参考Java面向对象编程的第19章Object 类nObject 类是所有Java类的最终祖先,如果一个类在声明时没有包含extends关键词,那么这个类直接继承Object类。 n(1)equals(Object obj)n(2)notify()n(3)nofityAll()n(4)wait()n(5)toStr

2、ing():返回当前对象的字符串表示,格式为“类名对象的16进制哈希码”。许多类,如String、StringBuffer和包装类都覆盖了toString()方法,返回具有实际意义的内容。Object 类的toString()方法n当System.out.println()方法的参数为Object类型,println()方法会自动先调用Object对象的toString()方法,然后打印toString()方法返回的字符串。System.out.println(new Object().toString(); /打印java.lang.Object273d3cSystem.out.printl

3、n(new Integer(100).toString(); /打印100System.out.println(new String(123).toString(); /打印123System.out.println(new StringBuffer(123456).toString(); /打印123456以上代码等价于:System.out.println(new Object(); System.out.println(new Integer(100);System.out.println(new String(123);System.out.println(new StringBuff

4、er(123456);String类nindexOf()和lastIndexOf():在字符串中检索特定字符或子字符串,indexOf()方法从字符串的首位开始查找,而lastIndexOf()方法从字符串的末尾开始查找。如果找到,则返回匹配成功的位置,如果没有找到,则返回-1。String str=HelloHelloHello;/查找字符e第一次在str中出现的位置System.out.println(str.indexOf(e); /打印1/查找字符e从位置2开始第一次在str中出现的位置System.out.println(str.indexOf(e,2); /打印6/查找字符e在st

5、r中最后一次出现的位置System.out.println(str.lastIndexOf(e); /打印11/查找字符串ello从位置2开始第一次在str中出现的位置System.out.println(str.indexOf(ello,2); /打印6/查找字符串Ello第一次在str中出现的位置System.out.println(str.indexOf(Ello); /打印-1String类nconcat(String str):把字符串str附加在当前字符串的末尾。例如:String str=Hello;String newStr=str.concat(World);System.o

6、ut.println(str); /打印HelloSystem.out.println(newStr); /打印HelloWorld以上concat()方法并不会改变字符串str本身的内容。String类nsubstring():返回字符串的一个子字符串,有以下两种重载形式:public String substring(int beginIndex)public String substring(int beginIndex, int endIndex)n子串在源串中的起始位置为beginIndex,结束位置为endIndex-1。如果没有提供endIndex参数,那么结束位置为:字符串长度

7、-1。例如:String str=0123456;String sub1=str.substring(2);String sub2=str.substring(2,5);System.out.println(str); /打印0123456System.out.println(sub1); /打印23456 System.out.println(sub2); /打印234StringBuffer类nlength():返回字符串的字符个数,与String类的length()用法相同。nappend():向缓冲区内添加新的字符串,例如:StringBuffer sb=new StringBuffe

8、r(); sb.append(Hello); sb.append(World); System.out.println(sb); /打印HelloWorldnsubstring():用法与String类的substring()方法相同。ninsert( int offset, String str):在字符串中的offset位置插入字符串str,例如:StringBuffer sb=new StringBuffer(0456);sb.insert(1,123);System.out.println(sb); /打印0123456比较String类和StringBuffer类nString类不可

9、编辑nStringBuffer类可编辑String s1=new String(“abc”);s1.concat(“def”); StringBuffer sb1=new StringBuffer(“abc”);sb1.append(“def”);System.out.println(s1);System.out.println(sb1);String对象(abc)String对象(abcdef)s1.concat(“def”)s1引用变量StringBuffer对象(abcdef)sb1.append(“def”)sb1引用变量包装类基本类型的数据分别对应的包装类为:基本类型的数据分别对应的

10、包装类为: boolean Boolean byte Byte char Charactor short Short int Integer long Long float Float double Double包装类的层次结构Number类的主要方法如下:byteValue():返回Number对象所表示的数字的byte类型值。intValue():返回Number对象所表示的数字的int类型值。longValue():返回Number对象所表示的数字的long类型值。shortValue():返回Number对象所表示的数字的short类型值。doubleValue():返回Number对

11、象所表示的数字的double类型值。floatValue():返回Number对象所表示的数字的float类型值。包装类的构造方法Integer i=new Integer(1);Float f=new Float( 1.0f);Double d=new Double(1.0);Integer i=new Integer(123);Double d=new Double(123.45D);Float f=new Float(123.45F);包装类的常用方法n除Character类和Boolean类以外,包装类都有valueOf(String s)静态工厂方法,可以根据String类型的参数来

12、创建包装类对象。参数字符串s不能为null,而且该字符串必须可以解析为相应的基本类型的数据,否则虽然编译会通过,运行时会抛出NumberFormatException。例如:Double dDouble.valueOf(123); /合法Integer i=Integer.valuesOf(12); /合法Integer i=Integer.valuesOf(abc); /运行时抛出NumberFormatException包装类的常用方法n除 Character类 和 Boolean类 以 外 , 包 装 类 都 有parseXXX(String str)静态方法,把字符串转变为相应的基本类

13、型的数据(XXX表示基本类型的名称)。参数str不能为null,而且该字符串必须可以解析为相应的基本类型的数据,否则虽然编译会通过,运行时会抛出NumberFormatException。例如:int i=Integer.parseInt(123); /合法,i=123double d=Double.parseDouble(abc); /抛 出NumberFormatException包装类的用法举例n将字符串转换为某种基本类型。int a=Integer.parseInt(“123”);int a1=new Integer(“123”).intValue();double d=Double.

14、parseDouble(“234.567”);double d1=new Double (“234.567”).doubleValue();Math类 n Math类是final的。nMath的构造方法是private的。nMath提供的方法都是静态的。Math类的主要方法nabs():返回绝对值。 nceil():返回大于等于参数的最小整数。 nfloor():返回小于等于参数的最大整数。 nmax():返回两个参数的较大值。 nmin():返回两个参数的较小值。 nrandom():返回0.0和1.0 之间的double类型的随机数,包括0.0,但不包括1.0。 nround():返回四舍

15、五入的整数值。nsin():正弦函数。ncos():余弦函数。ntan():正切函数。nexp():返回自然对数的幂。nsqrt():平方根函数。 npow():幂运算。Math类的常用方法的参数类型和返回类型Math类的常用方法System.out.println(Math.round(3.3); /打印3System.out.println(Math.round(-3.3); /打印-3 System.out.println(Math.ceil(3.3); /打印4.0System.out.println(Math.ceil(-3.3); /打印-3.0System.out.println

16、(Math.floor(3.3); /打印3.0System.out.println(Math.floor(-3.3); /打印-4.0 int a=Math.floor(3.3); /编译出错第9课 Java集合(位于java.util包中)nJava集合主要分为三种类型:nSet(集):集合中的对象不按特定方式排序,并且没有重复对象。它的有些实现类能对集合中对象按特定方式排序。nList(列表):集合中的对象按照索引位置排序,可以有重复对象,允许按照对象在集合中的索引位置检索对象。List与数组有些相似。nMap(映射):集合中的每一个元素包含一对键对象和值对象,集合中没有重复的键对象,值

17、对象可以重复。它的有些实现类能对集合中的键对象进行排序。参考Java面向对象编程的第15章Java集合与数组的区别n在创建Java数组时,必须明确指定数组的长度,数组一旦创建,其长度就不能被改变。为了使程序能方便的存储和操纵数目不固定的一组数据,JDK类库提供了Java集合,所有Java集合类都位于java.util包中。n与Java数组不同,Java集合中不能存放基本类型数据,而只能存放对象的引用。主要集合类的类框图 Set(集集)nSet是最简单的一种集合,集合中的对象不按特定方式排序,并且没有重复对象。nSet接口主要有两个实现类HashSet和TreeSet。nHashSet类按照哈希

18、算法来存取集合中的对象,存取速度比较快。HashSet类还有一个子类LinkedHashSet类,它不仅实现了哈希算法,而且实现了链表数据结构,链表数据结构能提高插入和删除元素的性能。nTreeSet类实现了SortedSet接口,具有排序功能。Set的一般用法的一般用法Set set=new HashSet();String s1=new String(hello);String s2=s1;String s3=new String(world);set.add(s1);set.add(s2);set.add(s3);System.out.println(set.size(); /打印集合中

19、对象的数目2 List(列表列表)nList的主要特征是其元素以线性方式存储,集合中允许存放重复对象。List接口主要的实现类包括:nArrayList:ArrayList代表长度可变的数组。允许对元素进行快速的随机访问,但是向ArrayList中插入与删除元素的速度较慢。nLinkedList:在实现中采用链表数据结构。对顺序访问进行了优化,向List中插入和删除元素的速度较快,随机访问则相对较慢。随机访问是指检索位于特定索引位置的元素。LinkedList单独具有addFirst()、addLast()、getFirst()、getLast()、removeFirst()和removeLa

20、st()方法,这些方法使得LinkedList可以作为堆栈、队列和双向队列使用。List的用法n向列表中加入元素List list=new ArrayList();list.add(new Integer(3);list.add(new Integer(4);list.add(new Integer(3);list.add(new Integer(2);nList的get(int index)方法返回集合中由参数index指定的索引位置的对象,第一个加入到集合中的对象的索引位置为0。以下程序依次检索出集合中的所有对象:for(int i=0;ilist.size();i+) System.ou

21、t.print(list.get(i)+ );对List中的元素进行自然排序 List list=new ArrayList();list.add(new Integer(3);list.add(new Integer(4);list.add(new Integer(3);list.add(new Integer(2);Collections.sort(list);Collections.sort(list);for(int i=0;ilist.size();i+) System.out.print (list.get(i)+ );Map(映射映射)nMap(映射)是一种把键对象和值对象进行映

22、射的集合,它的每一个元素都包含一对键对象和值对象。n向Map集合中加入元素时,必须提供一对键对象和值对象,从Map集合中检索元素时,只要给出键对象,就会返回对应的值对象。n接口Map提供了根据关键字找对应的值的方法get(),定义如下: Object get(Object key)n接口Map还提供了设置关键字和对应值的方法put(),定义如下: Object put(Object key,Object value) Map的用法n以下程序通过Map的put(Object key,Object value)方法向集合中加入元素,通过Map的get(Object key)方法来检索与键对象对应的值对象:Map map=new HashMap();map.put(1,Monday);map.put(2,Tuesday);map.put(3,Wendsday);map.put(4,Thursday);String day=map.get(2); /day的值为“Tuesday”

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 文学/艺术/历史 > 人文/社科

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号