第六章工具类_第1页
第六章工具类_第2页
第六章工具类_第3页
第六章工具类_第4页
第六章工具类_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、6-1Programming in Java第六章Java类库6-2Programming in Java是java所有类的父类方法 public Object() java.lang.Objectpublic Class getClass()protected void finalize()无参构造函数,继承必备protected Object clone()对象克隆public boolean equals(Object obj)判断2对象是否相等,相当于=public String toString()对象终结器,对象释放时调用打印输出和转换为字符串时调用-返回类型名地址6-3Progr

2、amming in Java所有类的祖先ObjectObject obj1=new Emloyee(1,张三); class Emloyee int m_EmpNumber; String m_EmpName; Emloyee(int num,String name) m_EmpNumber=num; m_EmpName=name; extends Object父子class ComEmloyee extends Employee int m_Hour; ComEmloyee(int hour,int num,String name) super(num,name);m_Hour=hourOb

3、ject obj1=new ComEmloyee(10,1,张三); 父子6-4Programming in Java例:字符串连接和+的密秘uSystem.out.println(obj1)时会自动调用obj1的toString()函数u“”+obj1 时会自动调用obj1的toString()函数6-5Programming in Java例:字符串连接和+的密秘package javajichu201109.ch6;public class TestObject public static void main(String args) Emloyee e1=new Emloyee(1,张

4、三); System.out.println(e1);class Emloyee int m_EmpNumber; String m_EmpName; Emloyee(int num,String name) m_EmpNumber=num; m_EmpName=name; javajichu201109.ch6.Emloyeec171646-6Programming in Java例:字符串连接和+的密秘如果希望System.out.println(e1);出如下内容:我的名字叫张三,我的编号是1号,该怎么办?class Emloyee int m_EmpNumber; String m_E

5、mpName; Emloyee(int num,String name)m_EmpNumber=num; m_EmpName=name; 答:在Employee中改写(覆盖)toString()方法public String toString() return 我的名字叫+m_EmpName+,我的编号是+m_EmpNumber; 6-7Programming in Java数据类型类shortlongbytefloatdoubleintcharbooleanBooleanCharactorByteShortIntegerLongFloatDouble6-8Programming in Jav

6、a 产生封装类型对象 public Integer(int x) public Integer(String s) 转换成字符串 public String toString() public static String toString(int x) 字符串转换成包装类型 public Integer valueOf(String s)数据类型类6-9Programming in Java字符串转换成基本数据类型 public static int parseInt(String s) public static float parseFloat(String s) public stati

7、c double parseDouble(String s) 数据类型类6-10Programming in Javau负责对应基本数据类型与字符串和其他类型的转换u存储到向量、队列、链表等数据结构中时,需要把基本数据类型包装成对象 数据类型类int x=90; String s=Integer.toBinaryString(x); System.out.println(s);1011010 s=Integer.toHexString(x); System.out.println(s);5a s=Integer.toOctalString(x); System.out.println(s);1

8、32 s=Integer.toString(x); System.out.println(s);906-11Programming in Java6-12Programming in Java没有实例对象 方法(全为静态方法) public static void exit(int status)public static void arrayCopy(Object src, int srcp, Object dst, int dstp,int length) public static long currentTimeMillis() public static void gc()java.

9、lang.System6-13Programming in JavaSystem.out.println(System.currentTimeMillis();6-14Programming in Javapublic final static double E;public final static double PI;public static double abs(double a)public static double acos(double a)public static double exp(double a)public static double floor(double a

10、)public static double random()public static double sqrt(double a)public static double pow(double a,double b).java.lang.Math6-15Programming in Java System.out.println( Math.exp(5); System.out.println( Math.random(); System.out.println( Math.pow(5,6);6-16Programming in Java 构造方法 public String() pubic

11、String(String s) public String(StringBuffer) public String (char value)java.lang.String6-17Programming in JavaString s1; s1=new String(); s1=new String(abcd); char a=new chare,f,g,h; s1=new String(a);abcds1s1efghs16-18Programming in Java获取字符串长度public int length() 判断字符串的前缀和后缀public boolean startsWith

12、(String prefix)public boolean endsWith(String suffix)java.lang.String6-19Programming in Javas1.length( ) s1.startsWith(jk ) s1.endWith(jk )efghs14falsefalse6-20Programming in Java字符串中单个字符查找public int indexOf(int ch)public int indexOf(int ch,int fromIndex)public int lastIndexOf(int ch)public int last

13、IndexOf(int ch,int fromIndex)public char charAt(int index)java.lang.String6-21Programming in Javas1.charAt(2) s1. indexOf(e)s1. indexOf(e,1)efghs1g0-16-22Programming in Java字符串中子串的查找public int indexOf(String str)public int indexOf(String str,int fromIndex)public int lastIndexOf(String str)public int

14、 lastIndedOf(String str, int fromIndex)public String substring(int be,int end)java.lang.String6-23Programming in Javas1.indexOf(ef)s1.indexOf(ef“,1)s1.lastIndexOf(ef“,1)s1.substring(0,2)efghs10-1efefs12efg6-24Programming in Java将字符串编程字符数组 public void getChars(int be,int en, char dst,int dstB)替换字符串中的

15、字符 public String replace(char so,char dst)字符串大小写转换 public String toLowerCase() public String toUpperCase()java.lang.String6-25Programming in Javachar a=new char10; s1.getChars(0,3,a,0); String s2=s1. replace(e,a)s2=s1. toUpperCase()efghs1feagefghs1afghs2efghs1EFGHs26-26Programming in Java比较两个字符串publ

16、ic int compareTo(String anotherString)public boolean equals(Object anObject)public boolean equalsIgnore(String anotherString) 连接字符字串public String concat(String str)基本数据类型转换为字符串 public static String valueOf(X x)java.lang.String6-27Programming in JpareTo(dddddddddddd)s1. equals(“efgh”)s1. equalsIgnore

17、 (“EFGH”)String s3=s1. concat(“ijk”);String s4= String.valueOf(56);1efghs1truetrueefghs1efghijks356s46-28Programming in Java实例 编程判断一个字符串是否是回文6-29Programming in Java 构造方法public StringBuffer()public StringBuffer(int length)public StringBuffer(String str) 字符串变量的扩充、修改与操作public StringBuffer append(X,x)pu

18、blic StingBuffer insert(int index,X x) public StringBuffer deleteCharAt(int s) public StringBuffer reverse()public StringBuffer setCharAt(int in,char ch)java.lang.StringBuffer6-30Programming in JavaStringBuffer s1=new StringBuffer ();StringBuffer s2=new StringBuffer (abcd);StringBuffer s3=new String

19、Buffer (6);s2.insert (1,gggg);s2.setCharAt (1,d); s3.append(odj) ; s1abcds2 s3aggggbcds2adgggbcds2odjs36-31Programming in Java s2.deleteCharAt(1);s2.reverse()agggbcds2dcbgggas26-32Programming in Javapublic class UseComLparameterpublic static void main(String args)int a1,a2,a3;if(args.length2)System.

20、out.println(运行本程序应该提供两个命令行参数);System.exit(0);a1=Integer.parseInt(args0);a2=Integer.parseInt(args1);a3=a1*a2;System.out.println(a1+与+a2+相乘的积为:+a3);命令行参数6-33Programming in Java数组1.一维数组1)定义(分三步走) 声明数组 int a; int b; 创建数组空间 a=new int5; 赋初值6-34Programming in Java2)性质Length下标是Object类的对象3)数组操作元素的下标访问数组元素拷贝S

21、ystem.arraycopy (Object s,int bes, Object d, int bed,int length);数组赋值6-35Programming in Java /数组定义int e;/声明数组e=new int 5;/内必须有元素个数for(int i=0;ie.length ;i+)/元素初始化ei=i;6-36Programming in Javafor(int i=0;ie.length ;i+)/属性lengthSystem.out .print (ei+ );int a=1,2,3,4;/直接初始化for(int j=0;ja.length ;j+)Syst

22、em.out .print (n+aj+ );int d=new int 5,6,7,8;/内无元素个数6-37Programming in JavaEmployee c=new Employee (),new Employee ();/对象数组/ c=new Employee 3;for(int i=0;ic.length ;i+)/ci=new Employee ();System.out .println (ci.getClass ().getName (); 6-38Programming in Java/数组符值是把同一数组空间取了一个别名a=d;for(int i=0;ia.len

23、gth ;i+)System.out .println (a+i+=+ai+nd+i+=+di);a0=56;System.out .println (a0=+a0+nd0=+d0);6-39Programming in Java/数组拷贝System.arraycopy (d,2,a,0,2);for(int i=0;ia.length ;i+)System.out .println (a.length ); /a+i+=+ai+nd+i+=+di);6-40Programming in Java2.二维数组1)定义2)性质实质是一维数组的一维数组length是行数3)操作二维数组元素下标访

24、问元素交换6-41Programming in Java/二维数组int f=2,3,4,4,5,6;System.out .println (f.length=+f.length );/二维数组是数组的数组int g=new int 45;/创建多维数组空间时可把行和列分开g=new int 6;for(int i=0;ig.length ;i+)gi=new int i+1;234456 6-42Programming in JavaEmployee x=new Employee (),new Employee (),new Employee (),new Employee (); 6-4

25、3Programming in Javafor(int j=0;jx.length ;j+)for(int i=0;ixj.length ;i+)/ci=new Employee ();System.out .println (xij.getClass ().getName ();6-44Programming in Java/数组元素交换int t=f0;f0=f1;f1=t;for(int i=0;if.length ;i+)for(int j=0;jfi.length ;j+)System.out .print (fij);System.out .println ();6-45Progr

26、amming in Java 功能:实现变长对象数组 构造函数 public Vector( int initialCapacity, int capacityIncrement ) public Vector( int initialCapacity ) public Vector() 向向量序列中添加元素 public void addElement(Object obj ) public void insertElementAt( Object obj, int index ) java.util.Vector6-46Programming in JavaVector v1=new Ve

27、ctor ();Vector v2=new Vector (4);Vector v3=new Vector (2,5);/2为原始序列中包含元素个数,5为一次性追加元素个数v3.addElement (aaaa);v3.addElement (Integer.valueOf (56);v1v2aaaav3aaaa56v36-47Programming in Javav3.insertElementAt (bbbb,0);/insertElementAt只能向已存在的序列中插入元素v3.setElementAt (cccc ,1);/setElementAt只能修改序列中已存在的元素bbbb56v3aaaacccc56v3aaaa6-48Programmi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论