补充 String类.doc_第1页
补充 String类.doc_第2页
补充 String类.doc_第3页
补充 String类.doc_第4页
补充 String类.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

第五讲 String类目标:1. 掌握String类创建对象的方法2. 掌握String类的比较3. 掌握String类与数组4. 掌握API的查询5. 掌握Eclipse开发工具的用法String类是用来处理字符串的类,他的用途非常广泛。但是String类和普通类不一样,他是一个特殊的类。一、 String类创建对象的方法 采用直接赋值的方式创建对象 eg: String s = “abc”; String name = “小明”; 使用String类的构造方法创建对象eg:String s = new String(); s = “abc”; String s = new String(“abc”);案例:public class Testpublic static void main(String args)/直接赋值String s1 = abc;/使用构造方法String s2 = new String();s2 = abc;/使用构造方法String s3 = new String(abc);System.out.println(s1);System.out.println(s2);System.out.println(s3);二、 String类的比较案例一:public class Testpublic static void main(String args)int a = 10;int b = 10;String s1 = Hello;String s2 = new String(Hello);System.out.println(a=b);/trueSystem.out.println(s1=s2);/falseSystem.out.println(s1.equals(s2);/true说明: a=b a和b都是基本数据类类型,使用=可以判断a的值是否和b相等s1=s2 s1和s2都是String类型的对象,s1,s2中放的都是地址,使用=判断的是s1和s2的地址是否相等s1.equals(s2) equals()是一个方法,该方法是用来比较两个字符串的内容是否一样 思考:public class Testpublic static void main(String args)int a1 = 10;int b1 = 1,2,3;String s1 = Hello;System.out.println(a1);/10System.out.println(b1);/Ic17164System.out.println(s1);/Hello直接输出System.out.println(a1); 输出 10直接输出System.out.println(b1); 输出 Ic17164 因为 b1是数组,属于引用类型,所以直接输出b1是输出的地址直接输出System.out.println(s1); 输出Hello s1不也是引用类型吗?s1保存的也是地址,为什么结果输出的是内容?因为String类型比较特殊,他和基本数据类型一样使用的非常频繁,所以系统对他做了特殊处理,如果直接输出String类型的对象,会默认调用toString()方法,该方法就是用来输出字符串对象中的内容。所以System.out.println(s1);相当于System.out.println(s1.toString();案例二:public class Testpublic static void main(String args)String s1 = Hello;String s2 = new String(Hello);String s3 = s2;System.out.println(s1=s2);/falseSystem.out.println(s1=s3);/falseSystem.out.println(s2=s3);/trueSystem.out.println(s1.equals(s2);/trueSystem.out.println(s1.equals(s3);/trueSystem.out.println(s2.equals(s3);/true案例三:public class Testpublic static void main(String args)String s1 = Hello;String s2 = Hello;String s3 = s2;System.out.println(s1=s2);/trueSystem.out.println(s1=s3);/trueSystem.out.println(s2=s3);/trueSystem.out.println(s1.equals(s2);/trueSystem.out.println(s1.equals(s3);/trueSystem.out.println(s2.equals(s3);/true说明:当String类采用直接赋值的方式初始化对象时,如果后面对象的内容和前面对象的内容相同,系统不再开辟新的堆内存空间,共有前面的一个。这样可以节省内存空间。所以平时编程中,使用String类型时一般采用直接赋值的方式初始化String类型的对象。总结:1. String类创建对象有两种方式:直接赋值,使用构造方法。2. =和equals(). =是比较值是否相等。equals()比较两个String类型对象的内容是否一样。三、 String类与数组转换 数组转换成字符串(使用String类的构造方法完成)public class Testpublic static void main(String args)char c = H,e,l,l,o;/通过构造方法,将char类型数组转换成一个String类型的对象String s1 = new String(c); System.out.println(s1);/通过构造方法,将char类型数组中一部分转成String类型对象String s2 = new String(c,1,3);System.out.println(s2); 字符串转换成数组(使用toCharArray()public class Testpublic static void main(String args)String s = abcdef;char c = s.toCharArray();for(int i = 0;i=c.length-1;i+)System.out.println(ci);四、 API的查询1. 输出字符串长度. length()public class Testpublic static void main(String args)String s = abcdefdas;System.out.println(s.length();2. 取得某个位置的字符 charAt()public class Testpublic static void main(String args)String s = abcdefdas;System.out.println(s.charAt(4);3. 截取字符串的一部分 substring()public class Testpublic static void main(String args)String s = abcde;System.out.println(s.substring(2);/cdeSystem.out.println(s.substring(1,3);/bc4. 字符串大小写转换 toUpperCase() toLowerCase()public class Testpublic static void main(String args)String s = abCDeF;System.out.println(s);System.out.println(s.toUpperCase();System.out.println(s.toLowerCase();5. 比较字符串内容,忽略大小写 equalsIgnoreCase()import java.util.*;public class Testpublic static void main(String args)Scanner input = new Scanner(System.in);System.out.println(验证码:AxWDf);System.out.println(请输入验证码:);String s = input.next();/输入if(s.equalsIgnoreCase(AxWDf)System.out.println(验证码正确!);elseSystem.out.println(验证码错误!);6. 判断某个字符是否存在 indexOf()import java.util.*;public class Testpublic static void main(String args)Scanner input = new Scanner(System.in);System.out.println(请输入邮箱:);String s = input.next();/输入int a = s.indexOf();if(a!=-1)System.out.println(邮箱合格,包含符号!);elseSystem.out.println(邮箱不合格,没有包含符号!);7. 替换字符串中某个字符 replace()public class Test public static void main(String args) String s = abcab

温馨提示

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

评论

0/150

提交评论