




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java的String类初识本篇文章将介绍一下Java的一些主要类,String类、StringBuffer类、Math类。Java是一种真正的面向对象的语言,即使是开发简单的程序,也必须设计对象。Java自身也为我们提供了许多已设计好的类,要想灵活使用Java进行编程,熟悉Java的这些主要类将是必不可少的前提条件之一。String 类顾名思义,String是串的意思,这个类是字符串常量的类。相信使用过C语言进行编程的人都知道字符串是怎么回事,这里就不再进行赘述了。但有一点要说明的是,Java中的字符串和C语言中的字符串是有区别的。在C语言中,并没有真正意义上的字符串,C语言中的字符串就是字符数组,使用起来非常的灵活。而在Java中,字符串常量是一个类String类,它和字符数组是不同的。下面先介绍一下String类的构造函数public String()这个构造函数用来创建一个空的字符串常量。如:String test=new String();或:String test;test=new String();publicString(String value )这个构造函数用一个已经存在的字符串常量作为参数来创建一个新的字符串常量。另外值得注意的是,Java会为每个用双引号.括起来的字符串常量创建一个String类的对象。如:String k=Hi.; Java会为Hi. 创建一个String类的对象,然后把这个对象赋值给k。等同于:String temp=new String(Hi.);String k=temp;这个构造函数的用法如:String test=new String(k); (注:k是一个String类的对象)String test=new String(Hello, world.);public String( char value )这个构造函数用一个字符数组作为参数来创建一个新的字符串常量。用法如:char z=h,e,l,l,o;String test=new String(z); (注:此时test中的内容为hello)public String( char value, int offset, int count )这个构造函数是对上一个的扩充,用一句话来说,就是用字符数组value,从第offset个字符起取count个字符来创建一个String类的对象。用法如:char z=h,e,l,l,o;String test=new String(z,1,3); (注:此时test中的内容为ell)注意:数组中,下标0表示第一个元素,1表示第二个元素如果 起始点offset 或 截取数量count 越界,将会产生异常 String Index OutOf Bounds Exceptionpublic String( StringBuffer buffer )这个构造函数用一个StringBuffer类的对象作为参数来创建一个新的字符串常量。String类是字符串常量,而StringBuffer类是字符串变量,是不同的。StringBuffer类将在后面进行介绍。String类的方法有:public char charAt( int index )这个方法用来获取字符串常量中的一个字符。参数index指定从字符串中返回第几个字符,这个方法返回一个字符型变量。用法如:String s=hello;char k=s.charAt(0); (注:此时k的值为h)public int compareTo( String anotherString )这个方法用来比较字符串常量的大小,参数anotherString为另一个字符串常量。若两个字符串常量一样,返回值为0。若当前字符串常量大,则返回值大于0。若另一个字符串常量大,则返回值小于0。用法如:String s1=abc;String s2=abd;int result=pareTo(s1); (注:result的值大于0,因为d在ascII码中排在c的后面,则s2s1)public String concat( String str )这个方法将把参数字符串常量str 接在当前字符串常量的后面,生成一个新的字符串常量,并返回。用法如:String s1=How do ;String s2=you do?;String ss=s1.concat(s2); (注:ss的值为How do you do?)public boolean startsWith( String prefix )这个方法判断当前字符串常量是不是以参数prefix字符串常量开头的。是,返回true。否,返回false。 用法如:String s1=abcdefg;String s2=bc;boolean result=s1.startsWith(s2); (注:result的值为false)public boolean startsWith( String prefix, int toffset )这个方法是对上一个方法的重载,新增的参数toffset指定进行查找的起始点。public boolean endsWith( String suffix )这个方法判断当前字符串常量是不是以参数suffix字符串常量结尾的。是,返回true。否,返回false。用法如:String s1=abcdefg;String s2=fg;boolean result=s1.endsWith(s2); (注:result的值为true)public void getChars( int srcBegin, int srcEnd, char dst, int dstBegin )这个方法用来从字符串常量中截取一段字符串并转换为字符数组。参数srcBegin为截取的起始点,srcEnd为截取的结束点,dst为目标字符数组,dstBegin指定将截取的字符串放在字符数组的什么位置。实际上,srcEnd为截取的结束点加1,srcEnd-srcBegin为要截取的字符数,用法如:String s=abcdefg;char z=new char10;s.getChars(2,4,z,0); (注:z0的值为c,z1的值为d,截取了两个字符 4-2=2)public int indexOf( int ch )这个方法的返回值为字符ch在字符串常量中从左到右第一次出现的位置。若字符串常量中没有该字符,则返回-1。用法如:String s=abcdefg;int r1=s.indexOf(c);int r2=s.indexOf(x); (注:r1的值为2,r2的值为-1)public int indexOf( int ch, int fromIndex )这个方法是对上一个方法的重载,新增的参数fromIndex为查找的起始点。用法如:String s=abcdaefg;int r=s.indexOf(a,1); (注:r的值为4)public int indexOf( String str )这个重载方法返回字符串常量str在当前字符串常量中从左到右第一次出现的位置,若当前字符串常量中不包含字符串常量str,则返回-1。用法如:String s=abcdefg;int r1=s.indexOf(cd);int r2=s.indexOf(ca); (注:r1的值为2,r2的值为-1)public int indexOf( String str, int fromIndex )这个重载方法新增的参数fromIndex为查找的起始点。以下四个方法与上面的四个方法用法类似,只是在字符串常量中从右向左进行查找。public int lastIndexOf( int ch )public int lastIndexOf( int ch, int fromIndex )public int lastIndexOf( String str )public int lastIndexOf( String str, int fromIndex )public int length()这个方法返回字符串常量的长度,这是最常用的一个方法。用法如:String s=abc;int result=s.length(); (注:result的值为3)public char toCharArray()这个方法将当前字符串常量转换为字符数组,并返回。用法如:String s=Who are you?;char z=s.toCharArray();public static String valueOf( boolean b )public static String valueOf( char c )public static String valueOf( int i )public static String valueOf( long l )public static String valueOf( float f )public static String valueOf( double d )以上6个方法可将boolean、char、int、long、float和double 6种类型的变量转换为String类的对象。用法如:String r1=String.valueOf(true); (注:r1的值为true)String r2=String.valueOf(c); (注:r2的值为c)float ff=3.1415926;String r3=String.valueOf(ff); (注:r3的值为3.1415926)StringBuffer 类String类是字符串常量,是不可更改的常量。而StringBuffer是字符串变量,它的对象是可以扩充和修改的。String类的构造函数public StringBuffer()创建一个空的StringBuffer类的对象。 public StringBuffer( int length )创建一个长度为参数length 的StringBuffer类的对象。注意:如果参数length小于0,将触发NegativeArraySizeException异常。public StringBuffer( String str )用一个已存在的字符串常量来创建StringBuffer类的对象。StringBuffer类的方法有:public String toString()转换为String类对象并返回。由于大多数类中关于显示的方法的参数多为String类的对象,所以经常要将StringBuffer类的对象转换为String类的对象,再将它的值显示出来。用法如:StringBuffer sb=new StringBuffer(How are you?);Label l1=new Label(sb.toString(); (注:声明一个标签对象l1,l1上的内容为How are you?)public StringBuffer append( boolean b )public StringBuffer append( char c )public StringBuffer append( int i)public StringBuffer append( long l )public StringBuffer append( float f )public StringBuffer append( double d )以上6个方法可将boolean、char、int、long、float和double 6种类型的变量追加到StringBuffer类的对象的后面。用法如:double d=123.4567;StringBuffer sb=new StringBuffer();sb.append(true);sb.append(c).append(d).append(99); (注:sb的值为truec123.456799)public StringBuffer append( String str )将字符串常量str追加到StringBuffer类的对象的后面。public StringBuffer append( char str )将字符数组str追加到StringBuffer类的对象的后面。public StringBuffer append( char str, int offset, int len )将字符数组str,从第offset个开始取len个字符,追加到StringBuffer类的对象的后面。 public StringBuffer insert( int offset, boolean b )public StringBuffer insert( int offset, char c )public StringBuffer insert( int offset, int i )public StringBuffer insert( int offset, long l )public StringBuffer insert( int offset, float f )public StringBuffer insert( int offset, double d )public StringBuffer insert( int offset, String str )public StringBuffer insert( int offset, char str )将boolean、char、int、long、float、double类型的变量、String类的对象或字符数组插入到tringBuffer类的对象中的第offset个位置。用法如:StringBuffer sb=new StringBuffer(abfg);sb.insert(2,cde); (注:sb的值为abcdefg)public int length()这个方法返回字符串变量的长度,用法与String类的length方法类似。附录:Math 类数学类包含了许多数学函数,如sin、cos、exp、abs等。Math类是一个工具类,它在解决与数学有关的一些问题是有着非常重要的作用。这个类有两个静态属性:E和PI。E代表数学中的e 2.7182818,而PI代表派pi 3.1415926。引用时,用法如:Math.E 和 Math.PiMath类的方法有:abs方法用来求绝对值public static int abs( int a )public static long abs( long a )public static float abs( float a )public static double abs( double a )acos求反余弦函数public static native double acos( double a )asin求反正弦函数public static native double asin( double
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家长开家长会发言稿14篇
- 山西省临汾市侯马市2024-2025学年八年级下学期7月期末考试数学试卷(含答案)
- 黑龙江省哈尔滨市六校2024-2025学年高一上学期期末联考化学试卷(含答案)
- 北师大版四年级上册数学期中检测题(无答案)
- 新能源汽车技术发展与市场趋势分析
- 广播电视安全播出工作总结
- “药”您健康知到智慧树答案
- “煎炒烹炸”与中药疗效知到智慧树答案
- T-CVMA 228-2025 普通级实验兔饲养管理规范
- 2025租房合同范本大全
- 新能源汽车维护与故障诊断课件
- 2025年中考冲刺模拟数学(云南卷)(考试版A3)
- DeepSeek+AI大模型赋能制造业集团数字化转型端到端采购供应链及财务管控业务流程蓝图规划方案
- 2025年征兵心理测试题及答案
- 《西红柿移栽和管理》课件
- 《肺癌早期筛查与干预》课件
- 完整的离婚协议书打印电子版(2025年版)
- 自然科学类博物馆AI应用行业跨境出海战略研究报告
- 《小学科学课程标准》解读与教学设计
- 2025届高考新型题目“纠正错别字”新题模拟练习
- 2024年江苏省南京市中考数学试卷真题(含答案逐题解析)
评论
0/150
提交评论