第5章--常用类和接口

上传人:ji****72 文档编号:53357240 上传时间:2018-08-29 格式:PPT 页数:71 大小:806KB
返回 下载 相关 举报
第5章--常用类和接口_第1页
第1页 / 共71页
第5章--常用类和接口_第2页
第2页 / 共71页
第5章--常用类和接口_第3页
第3页 / 共71页
第5章--常用类和接口_第4页
第4页 / 共71页
第5章--常用类和接口_第5页
第5页 / 共71页
点击查看更多>>
资源描述

《第5章--常用类和接口》由会员分享,可在线阅读,更多相关《第5章--常用类和接口(71页珍藏版)》请在金锄头文库上搜索。

1、第5章 Java常用类和接口,主讲人:,5.1字符串处理类,在Java中,字符串是作为内置对象进行处理的,在java.lang包中,有两个专门的类用来处理字符串,分别是String和StringBuffer,本节重点介绍这两个类的用法。,5.1.1 String类,String类表示了定长、不可变的字符序列,Java程序中所有的字符串常量(如“abc”)都作为此类的实例来实现。它的特点是一旦赋值,便不能改变其指向的字符串对象,如果更改,则会指向一个新的字符串对象。下面介绍String中常用的一些方法。,5.1.1 String类,1、构造方法 String() String(bytebytes

2、) String(byte ascii,int hibyte) String(byte bytes,int offset,int length) String(byte ascii,int hibyte,int offset,int count) String(bytebytes,int offset,int length,String charsetName) String(byte bytes,String charsetName) String(char value) String(char value,int offset,int count) String(int codePoint

3、s,int offset,int count) String(String original) String(StringBuffer buffer) String(StringBuilder builder),5.1.1 String类,例【5-1】使用字符数组创建一个字符串对象,然后再使用创建好的字符串对象创建另一个字符串对象class CloneStringpublic static void main(String args)char c=H,e,l,l,o;String str1=new String(c);String str2=new String(str1);System.ou

4、t.println(str1);System.out.println(str2);,5.1.1 String类,2、length()方法 字符串的长度是指其所包含的字符的个数,调用String的length() 方法可以得到这个值。 3、字符串连接 “+”运算符可以连接两个字符串,产生一个String对象。也允许使用一连串的“+”运算符,把多个字符串对象连接成一个字符串对象。,5.1.1 String类,【例5-2】定义一个图书类,包含图书的名称、作者以及出版社信息,并能返回相关信息。 public class BookDetailsfinal String name=“Java程序设计“;

5、final String author=“张三“; final String publisher=“科学出版社“;public static void main(String args)BookDetails oneBookDetail =new BookDetails();System.out.println(“the book datail:“+ oneBookDetail .name +“ - “ + oneBookDetail.author + “ - “ + oneBookDetail. publisher); ,5.1.1 String类,4、charAt()方法此方法的形式: c

6、har charAt(int where) 其中,where是想要得到的字符的下标,并且其值必须为非负的,它指定了在字符串中的位置。 5、 getChars()方法 此方法的形式: Void getChars(int sourceStart,int sourceEnd,char targte,int targetStart)其中, sourceStart表示子字符串的开始位置,sourceEnd是子字符串结束的下一个字符的位置,因此截取的子字符串包含了从sourceStart到sourceEnd-1的字符,字符串存放在字符数组target中从targetStart开始的位置,在此必须确保tar

7、get应该足够大能容纳所截取的子串。,5.1.1 String类,【例5-3】从一个字符串对象中的指定位置截取指定长度的子串放到一个字符数组中。 public class GetCharsDemo public static void main(String args) String s=“hello world“;int start=6;int end=11;char buf=new charend-start; /定义一个长度为end-start的字符数组s.getChars(start, end, buf, 0);System.out.println(buf); ,5.1.1 Strin

8、g类,6、 getBytes()方法 此方法使用平台的默认字符集将此字符串编码为 byte 序列,并将结果存储到一个新的 byte 数组中。也可以使用指定的字符集对字符串进行编码,把结果存到字节数组中,String类中提供了getBytes()的多个重载方法。,5.1.1 String类,7、 字符串的比较 (1) equals()和equalsIgnoreCase()方法 前者比较两个字符串的时候对字母大小写是敏感的,而后者不区分字母大小写。 (2) startsWith()和endsWith()方法 startsWith()方法判断一个给定的字符串是否从一个指定的字符串开始,而endsWi

9、th()方法判断字符串是否以一个指定的字符串结尾。 (3) equals()与=的区别 equals()方法比较字符串对象中的字符是否相等,而=运算符则比较两个对象引用是否指向同一个对象 (4) compareTo()方法 比较两个字符串的大小关系(按字母在字典中出现的先后顺序)。,5.1.1 String类,【例5-4】使用equals()和equalsIgnoreCase()判断两个字符串的内容是否相等。public class EqualDemo public static void main(String args) String s1=“hello“;String s2=“hello

10、“;String s3=“Good-bye“;String s4=“HELLO“;System.out.println(s1+“ equals “+s2+“-“+s1.equals(s2);System.out.println(s1+“ equals “+s3+“-“+s1.equals(s3);System.out.println(s1+“ equals “+s4+“-“+s1.equals(s4);System.out.println(s1+“ equalsIgnoreCase “+s4+“-“+s1.equalsIgnoreCase(s4);,5.1.1 String类,【例5-5】 使

11、用equal和“=”判断两个对象的关系。 public class EqualsDemo public static void main(String args) String s1=“book“;String s2=new String(s1);String s3=s1;System.out.println(“s1 equals s2-“+s1.equals(s2);System.out.println(“s1 = s2-“+(s1=s2);System.out.println(“s1 = s3-“+(s1=s3); ,5.1.1 String类,8、 字符串的搜索 (1) indexOf(

12、)方法 indexOf方法有4种形式,分别如下: int indexOf(int ch) int indexOf(int ch,int fromIndex) int indexOf(String str) int indexOf(String str,int fromlndex) (2 lastlndexOf()方法 lastlndexOf方法也有4种形式,分别如下。 int lastIndexOf(int ch) int lastIndexOf(int ch,int fromIndex) int lastIndexOf(String str) int lastlndexOf(String s

13、tr,int fromlndex),5.1.1 String类,9、字符串修改 字符串的修改包括取字符串中的子串、字符串之间的连接、替换字符串中的某字符、消除字符串的空格等功能。在String类中有相应的方法来提供 这些功能: String substring(int startIndex) String substring(int startIndex,int endlndex) String concat(String str) String replace(char original,char replacement) String replace(CharSequence target

14、,CharSequence reDlacen String trim(),5.1.1 String类,10、 ValueOf()方法 valueOf()方法是定义在String类内部的静态方法,利用这个方法,可以将几乎所有的Java简单数据类型转换为String类型。这个方法是String类型和其他Java简单类型之间的一座转换桥梁。除了把Java中的简单类型转换为字符串之外,valueOf方法还可以把Object类和字符数组转换为字符串。 valueOf()的通用形式如下,总共有9种形式。 static String valueOf(boolean b) static String valu

15、eOf(char c) static String valueOf(chardata) static String valueOf(chardata,int offset,int count) static String valueOf(double d) static String valueOf(float f) static String valueOf(int i) static String valueOf(1ong 1) static String valueOf(Object obj),5.1.1 String类,11、 toString()方法 toString()方法是在Ob

16、ject中定义,所以任何类都具有这个方法。然而toString()方法的默认实现是不够的,对于用户所创建的大多数类,通常都希望用自己提供的字符串表达式重载toString()方法。toString()方法的一般形式:String toString()。实现toString()方法,仅仅返回一个String对象,该对象包含描述类中对象的可读的字符串。通过对所创建类的toString()方法的覆盖,允许得到的字符串完全继承到Java的程序设计环境中。例如它们可以被用于print()和println()语句以及连接表达式中。,5.1.1 String类,【例5-6 】定义一个Person类,覆盖Ob

17、ject的toString()方法,再定义一个测试类,输出Person的信息。 public class Person String name;int age;Person(String n,int a)this.name=n;this.age=a;public String toString() /覆盖超类的toString()方法,返回自己的字符串对象return “姓名是“+name+“,年龄是“+age+“岁“; class PersonDemopublic static void main(String args) Person p=new Person(“王冷晗“,30);System.out.println(p); ,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

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