﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-xyd2012</title><link>http://www.blogjava.net/xyd2012/</link><description /><language>zh-cn</language><lastBuildDate>Wed, 06 May 2026 23:12:48 GMT</lastBuildDate><pubDate>Wed, 06 May 2026 23:12:48 GMT</pubDate><ttl>60</ttl><item><title>Java中String类的方法及说明</title><link>http://www.blogjava.net/xyd2012/archive/2012/10/08/389208.html</link><dc:creator>西斧头帮老大</dc:creator><author>西斧头帮老大</author><pubDate>Mon, 08 Oct 2012 14:58:00 GMT</pubDate><guid>http://www.blogjava.net/xyd2012/archive/2012/10/08/389208.html</guid><wfw:comment>http://www.blogjava.net/xyd2012/comments/389208.html</wfw:comment><comments>http://www.blogjava.net/xyd2012/archive/2012/10/08/389208.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xyd2012/comments/commentRss/389208.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xyd2012/services/trackbacks/389208.html</trackback:ping><description><![CDATA[一、构造函数<br />String(byte[] bytes):通过byte数组构造字符串对象<br />String(char[] value):通过char数组构造字符串对象<br />String(String original):构造一个original的副本，即：拷贝一个original<br />String(StringBuffer buffer):通过StringBuffer数组构造字符串对象<br />例如：<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; byte[] b={'a','b','c','d','e','f','g','h','i','j'};<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] c={'0','1','2','3','4','5','6','7','8','9'};<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String sb=new String(b);//abcdefghij<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String sb_sub=new String(b,3,2);//de<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String sc=new String(c);//0123456789<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String sc_sub=new String(c,3,2);//34<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String sb_copy=new String(sb);//abcdefghij<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("sb:"+sb);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("sb_sub:"+sb_sub);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("sc:"+sc);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("sc_sub:"+sc_sub);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("sb_copy:"+sb_copy);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 输出结果:sb:abcdefghij<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sb_sub:de<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sc:0123456789<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sc_sub:34<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sb_copy:abcdefghij<br />二、方法<br />说明：1.所有方法均为public<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.书写格式：[修饰符]&lt;返回类型&gt;&lt;方法名([参数列表])&gt;<br />1.char charAt(int index):取字符串中的某一个字符，其中的参数index指的是字符串中序数。<br />字符串的序数从0开始到length()-1.<br />例如：String s=new String("abcdefghijk");<br />System.out.println("s.charAt(5):"+s.charAt(5));<br />结果为:s.charAt(5):f<br />2.int&nbsp; compareTo(String anotherString):当前String对象与anotherString比较，相等关系返回0;不相等时，从两个字符串第0个字符开始比较，返回第一个不相等的字符差，另一种情况，较长字符串的前面部分恰巧是较短的字符串，返回它们的长度差。<br />3.int compareTo(Object o):如果o是String对象，和2的功能一样；否则抛出ClassCastException异常<br />例如:String s1=new String("abcdefghijklmn");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String s2=new String("abcdefghij");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String s3=new String("abcdefghijalmn");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s1.compareTo(s2):"+s1.compareTo(s2));//返回长度差<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s1.compareTo(s3));//返回'k'-'a'的差<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 结果:s1.compareTo(s2):4<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s1.compareTo(s3):10<br />4.String concat(String str):将该String对象与str连接在一起<br />5.boolean contentEquals(StringBuffer sb):将该String对象与StringBuffer对象sb进行比较<br />6.static String copyValueOf(char[] data)<br />7.static String copyValueOf(char[] data,int offset,int count);将两个方法将char数组转换成String,与其中一个构造函数类型<br />8.boolean endsWith(String suffix):该String对象是否以suffix结尾<br />例如:String s1=new String("abcdefghij");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String s2=new String("ghij");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s1.endsWith(s2):"+s1.endsWith(s2));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 结果为:s1.endsWith:true;<br />9.boolean equals(Object anObject):当anObject不为空并且与当前String对象一样，返回true,否则，返回false<br />10.byte[] getBytes():将该String对象转换成byte数组<br />11.void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin):该方法将字符串拷贝到字符数组中。其中，srcBegin为拷贝的起始位置，srcEnd为拷贝的结束位置、字符串数值dst为目标字符数值，dstBegin为目标字符数组的拷贝起始位置<br />例如：char[] s1={'I','','l','o','v','e','','h','e','r','!'};//s1=I love her!<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String s2=new String("you!");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s2.getChars(0,3,s1,7);//s1=I love you!<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(s1);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 结果为:I love you!<br />12.int hashCode():返回当前字符的哈希表码<br />13.int indexOf(int ch):只找第一个匹配字符串位置<br />14.int indexOf(int ch,int fromIndex):从fromIndex开始找第一个匹配字符位置<br />15.int indexOf(String str):只找第一个匹配字符串位置<br />16.int indexOf(String str,int fromIndex):从fromIndex开始找第一个匹配字符串位置<br />例如:String s=new String("write once, run anywhere!");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String ss=new String("run");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s.indexOf('r'):"+s.indexOf('r'));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s.indexOf('r',2):"+s.indexOf('r',2));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s.indexOf(ss):"+s.indexOf(ss));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 结果为:s.indexOf('r'):1<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s.indexOf('r',2):12<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s.indexOf(ss):12<br />17.int lastIndexOf(int ch)<br />18.int lastIndexOf(int ch,int fromIndex)<br />19.int lastIndexOf(String str)<br />20.int lastIndexOf(String str,int fromIndex)以上四个方法与13、14、15、16类似，不同的是:找最后一个匹配的内容<br />public class CompareToDemo{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public static void main(String[] args){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(s1.lastIndexOf((int)'b',7));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />}<br />运行结果:5<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (其中fromIndex的参数为7，是从字符串abcdefg的最后一个字符g开始往前数的位数。<br />21.int length:返回当前字符串长度<br />22.String replace(char oldChar,char newChar):将字符串中第一个oldChar替换成newChar<br />23.boolean startsWith(String prefix):该String对象是否以prefix开始<br />24.boolean startsWith(String prefix,int toffset):该String对象从toffset位置算起，是否以prefix开始<br />例如:String s=new String("write once,run anywhere!");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String ss=new String("write");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String sss=new String("once");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s.startsWith(ss):"+s.startsWith(ss));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("s.startsWith(sss,6):"+s.startsWith(sss,6));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 结果为:s.startsWith(ss):true<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s.startsWith(sss,6):true<br />25.String substring(int beginIndex):取从beginIndex位置开始到结束的子字符串<br />26.String substring(int beginIndex,int endIndex):取从beginIndex位置开始到endIndex位置的子字符串<br />27.char[] toCharArray():将该String对象转换成char数组<br />28.String toLowerCase():将字符串转换成小写<br />29.String toUpperCase():将字符串转换成大写<br />例如: String s=new String("java.lang.Class String");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s.toUpperCase():"+s.toUpperCase());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("s.toLowerCase():"+s.toLowerCase());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 结果为:s.toUpperCase():JAVA.LANG.CLASS STRING<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s.toLowerCase():java.lang.class string<br />30.static String valueOf(boolean b)<br />31.static String valueOf(char c)<br />32.static String valueOf(char[] data)<br />33.static String valueOf(char[] data,int count)<br />34.static String valueOf(double d)<br />35.static String valueOf(float f)<br />36.static String valueOf(int i)<br />37.static String valueOf(long l)<br />38.static String valueOf(Object obj)<br />以上方法用于将各种不同类型转换成java字符型，这些都是类方法<br />三、java中String类的常用方法:<br />public char charAt(int index)<br />返回字符串中第index个字符<br />public int length()<br />返回字符串的长度<br />public int indexOf(String str)<br />返回字符串中第一次出现str的位置<br />public int indexOf(String str,int fromIndex)<br />返回字符串从fromIndex开始出现str的位置<br />public boolean equalsIgnoreCase(String another)<br />比较字符串与another是否一样（忽略大小写)<br />public String replace(char oldchar,char newChar)<br />在字符串中用newChar字符替换oldChar字符<br />public boolean startsWith(String prefix)<br />判断字符串是否以prefix字符开头<br />public boolean endsWith(String suffix)<br />判断一个字符串是否以suffix字符串结尾<br />public String toUpperCase()<br />返回一个字符串为该字符串的大写形式<br />public String toLowerCase()<br />返回一个字符串为该字符串的小写形式<br />public String substring(int beginIndex)<br />返回该字符串从beginIndex开始到结尾的子字符串<br />public String substring(int beginIndex,int endIndex)<br />返回该字符串从beginIndex开始到endIndex结尾的子字符串<br />public String trim()<br />返回该字符串去掉开头和结尾空格后的字符串<br />public String[] split(String regex)<br />将一个字符串按照指定的分隔符分隔，返回分隔后的字符串数组<br />实例:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public class SplitDemo{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public static void main(String[] args){<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String date="2008/09/10";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String[] dateAfterSplit=new String[3];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dateAfterSplit=date.split("/");//以"/"作为分隔符来分割date字符串，并把结果放入3个字符串中<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(int i=0;i&lt;dateAfterSplit.length;i++)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.print(dateAfterSplit[i]+"");<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />运行结果:2008 09 10 //结果为分隔后的3个字符串<br /><br /><br /> <img src ="http://www.blogjava.net/xyd2012/aggbug/389208.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xyd2012/" target="_blank">西斧头帮老大</a> 2012-10-08 22:58 <a href="http://www.blogjava.net/xyd2012/archive/2012/10/08/389208.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>