Java String类的常用方法

String(byte[ ] bytes):通过byte数组构造字符串对象。
String(char[ ] value):通过char数组构造字符串对象。
String(Sting original):构造一个original的副本。即:拷贝一个original。
String(StringBuffer buffer):通过StringBuffer数组构造字符串对象。
byte[] b = {‘a‘,‘b‘,‘c‘,‘d‘,‘e‘,‘f‘,‘g‘,‘h‘,‘i‘,‘j‘};
char[] c = {‘0‘,‘1‘,‘2‘,‘3‘,‘4‘,‘5‘,‘6‘,‘7‘,‘8‘,‘9‘};
String sb = new String(b); //abcdefghij
String sb_sub = new String(b,3,2); //de
String sc = new String(c); //0123456789
String sc_sub = new String(c,3,2); //34
String sb_copy = new String(sb); //abcdefghij
System.out.println("sb:"+sb);
System.out.println("sb_sub:"+sb_sub);
System.out.println("sc:"+sc);
System.out.println("sc_sub:"+sc_sub);
System.out.println("sb_copy:"+sb_copy); 

输出结果:sb:abcdefghij 
sb_sub:de 
sc:0123456789 
sc_sub:34 
sb_copy:abcdefghij

二、方法

说明:

①、所有方法均为public。 
②、书写格式: [修饰符] <返回类型><方法名([参数列表])> 
例如:static int parseInt(String s) 
表示此方法(parseInt)为类方法(static),返回类型为(int),方法所需要为String类型。

1. char charAt(int index) :取字符串中的某一个字符,其中的参数index指的是字符串中序数。字符串的序数从0开始到length()-1 。 
例如:String s = new String("abcdefghijklmnopqrstuvwxyz"); 
System.out.println("s.charAt(5): " + s.charAt(5) ); 
结果为: s.charAt(5): f

2. int compareTo(String anotherString) :当前String对象与anotherString比较。相等关系返回0;不相等时,从两个字符串第0个字符开始比较,返回第一个不相等的字符差,另一种情况,较长字符串的前面部分恰巧是较短的字符串,返回它们的长度差。

3. int compareTo(Object o) :如果o是String对象,和2的功能一样;否则抛出ClassCastException异常。 
例如:

String s1 = new String("abcdefghijklmn"); 
String s2 = new String("abcdefghij"); 
String s3 = new String("abcdefghijalmn"); 
System.out.println("s1.compareTo(s2): " + s1.compareTo(s2) ); //返回长度差 
System.out.println("s1.compareTo(s3): " + s1.compareTo(s3) ); //返回‘k‘-‘a‘的差 
结果为:

s1.compareTo(s2): 4 
s1.compareTo(s3): 10

4. String concat(String str) :将该String对象与str连接在一起。

5. boolean contentEquals(StringBuffer sb) :将该String对象与StringBuffer对象sb进行比较。

6. static String copyValueOf(char[] data) :

7. static String copyValueOf(char[] data, int offset, int count) :这两个方法将char数组转换成String,与其中一个构造函数类似。

8. boolean endsWith(String suffix) :该String对象是否以suffix结尾。 
例如:String s1 = new String("abcdefghij"); 
String s2 = new String("ghij"); 
System.out.println("s1.endsWith(s2): " + s1.endsWith(s2) ); 
结果为:s1.endsWith(s2): true

9. boolean equals(Object anObject) :当anObject不为空并且与当前String对象一样,返回true;否则,返回false。

10. byte[] getBytes() :将该String对象转换成byte数组。

11. void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) :该方法将字符串拷贝到字符数组中。其中,srcBegin为拷贝的起始位置、srcEnd为拷贝的结束位置、字符串数值dst为目标字符数组、dstBegin为目标字符数组的拷贝起始位置。 
例如:char[] s1 = {‘I‘,‘ ‘,‘l‘,‘o‘,‘v‘,‘e‘,‘ ‘,‘h‘,‘e‘,‘r‘,‘!‘};//s1=I love her! 
String s2 = new String("you!"); s2.getChars(0,3,s1,7); //s1=I love you! 
System.out.println( s1 ); 
结果为:I love you!

12. int hashCode() :返回当前字符的哈希表码。

13. int indexOf(int ch) :只找第一个匹配字符位置。

14. int indexOf(int ch, int fromIndex) :从fromIndex开始找第一个匹配字符位置。

15. int indexOf(String str) :只找第一个匹配字符串位置。

16. int indexOf(String str, int fromIndex) :从fromIndex开始找第一个匹配字符串位置。 
例如:

String s = new String("write once, run anywhere!"); 
String ss = new String("run"); 
System.out.println("s.indexOf(‘r‘): " + s.indexOf(‘r‘) ); 
System.out.println("s.indexOf(‘r‘,2): " + s.indexOf(‘r‘,2) ); 
System.out.println("s.indexOf(ss): " + s.indexOf(ss) ); 
结果为:

s.indexOf(‘r‘): 1 
s.indexOf(‘r‘,2): 12 
s.indexOf(ss): 12

17. int lastIndexOf(int ch)

18. int lastIndexOf(int ch, int fromIndex)

19. int lastIndexOf(String str)

20. int lastIndexOf(String str, int fromIndex) 以上四个方法与13、14、15、16类似,不同的是:找最后一个匹配的内容。

public class CompareToDemo {
    public static void main (String[] args) {
        String s1 = new String("acbdebfg");
        System.out.println(s1.lastIndexOf((int)‘b‘,7));
    }
} 

运行结果:5 
(其中fromIndex的参数为 7,是从字符串acbdebfg的最后一个字符g开始往前数的位数。既是从字符c开始匹配,寻找最后一个匹配b的位置。所以结果为 5)

21. int length() :返回当前字符串长度。

22. String replace(char oldChar, char newChar) :将字符号串中第一个oldChar替换成newChar。

23. boolean startsWith(String prefix) :该String对象是否以prefix开始。

24. boolean startsWith(String prefix, int toffset) :该String对象从toffset位置算起,是否以prefix开始。 
例如:

String s = new String("write once, run anywhere!"); 
String ss = new String("write"); 
String sss = new String("once"); 
System.out.println("s.startsWith(ss): " + s.startsWith(ss) ); 
System.out.println("s.startsWith(sss,6): " + s.startsWith(sss,6) ); 
结果为:

s.startsWith(ss): true 
s.startsWith(sss,6): true

25. String substring(int beginIndex) :取从beginIndex位置开始到结束的子字符串。

26.String substring(int beginIndex, int endIndex) :取从beginIndex位置开始到endIndex位置的子字符串。

27. char[ ] toCharArray() :将该String对象转换成char数组。

28. String toLowerCase() :将字符串转换成小写。

29. String toUpperCase() :将字符串转换成大写。 
例如:

String s = new String("java.lang.Class String"); 
System.out.println("s.toUpperCase(): " + s.toUpperCase() ); 
System.out.println("s.toLowerCase(): " + s.toLowerCase() ); 
结果为:

s.toUpperCase(): JAVA.LANG.CLASS STRING 
s.toLowerCase(): java.lang.class string

30. static String valueOf(boolean b) 
31. static String valueOf(char c) 
32. static String valueOf(char[] data) 
33. static String valueOf(char[] data, int offset, int count) 
34. static String valueOf(double d) 
35. static String valueOf(float f) 
36. static String valueOf(int i) 
37. static String valueOf(long l) 
38. static String valueOf(Object obj) 
以上方法用于将各种不同类型转换成Java字符型。这些都是类方法。

Java中String类的常用方法: 
public char charAt(int index) 
返回字符串中第index个字符; 
public int length() 
返回字符串的长度; 
public int indexOf(String str) 
返回字符串中第一次出现str的位置; 
public int indexOf(String str,int fromIndex) 
返回字符串从fromIndex开始第一次出现str的位置; 
public boolean equalsIgnoreCase(String another) 
比较字符串与another是否一样(忽略大小写); 
public String replace(char oldchar,char newChar) 
在字符串中用newChar字符替换oldChar字符 
public boolean startsWith(String prefix) 
判断字符串是否以prefix字符串开头; 
public boolean endsWith(String suffix) 
判断一个字符串是否以suffix字符串结尾; 
public String toUpperCase() 
返回一个字符串为该字符串的大写形式; 
public String toLowerCase() 
返回一个字符串为该字符串的小写形式 
public String substring(int beginIndex) 
返回该字符串从beginIndex开始到结尾的子字符串; 
public String substring(int beginIndex,int endIndex) 
返回该字符串从beginIndex开始到endsIndex结尾的子字符串 
public String trim() 
返回该字符串去掉开头和结尾空格后的字符串 
public String[] split(String regex) 
将一个字符串按照指定的分隔符分隔,返回分隔后的字符串数组

public class SplitDemo{
    public static void main (String[] args) {
        String date = "2008/09/10";
        String[ ] dateAfterSplit= new String[3];
        dateAfterSplit=date.split("/"); //以“/”作为分隔符来分割date字符串,并把结果放入3个字符串中。
        for(int i=0;i<dateAfterSplit.length;i++)
        System.out.print(dateAfterSplit[i]+" ");
    }
} 

运行结果:2008 09 10 //结果为分割后的3个字符串

实例: 
TestString1.java:

public class TestString1
{
public static void main(String args[]) {
String s1 = "Hello World" ;
String s2 = "hello world" ;
System.out.println(s1.charAt(1)) ;
System.out.println(s2.length()) ;
System.out.println(s1.indexOf("World")) ;
System.out.println(s2.indexOf("World")) ;
System.out.println(s1.equals(s2)) ;
System.out.println(s1.equalsIgnoreCase(s2)) ;
String s = "我是J2EE程序员" ;
String sr = s.replace(‘我‘,‘你‘) ;
System.out.println(sr) ;
}
} 

TestString2.java:

public class TestString2
{
public static void main(String args[]) {
String s = "Welcome to Java World!" ;
String s2 = " magci " ;
System.out.println(s.startsWith("Welcome")) ;
System.out.println(s.endsWith("World")) ;
String sL = s.toLowerCase() ;
String sU = s.toUpperCase() ;
System.out.println(sL) ;
System.out.println(sU) ;
String subS = s.substring(11) ;
System.out.println(subS) ;
String s1NoSp = s2.trim() ;
System.out.println(s1NoSp) ;
} 
时间: 2024-08-05 15:05:18

Java String类的常用方法的相关文章

Java 中 String 类的常用方法

String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等,下面我们就来领略它的强大之处吧. String 类的常用方法: 结合代码来熟悉一下方法的使用: 运行结果: 我们继续来看 String 类常用的方法,如下代码所示: 运行结果: 那么,“==” 和 equals() 有什么区别呢? ==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象 equals(): 比较存储在两个字符串对象中的内容是否一致 P

java String 类 基础笔记

字符串是一个特殊的对象. 字符串一旦初始化就不可以被改变. String s = "abc";//存放于字符串常量池,产生1个对象 String s1=new String("abc");//堆内存中new创建了一个String对象,产生2个对象 String类中的equals比较字符串中的内容. 常用方法: 一:获取 1.获取字符串中字符的个数(长度):length();方法. 2.根据位置获取字符:charAt(int index); 3.根据字符获取在字符串中

JAVA String 类

java String类中的常用方法:public char charAt(int index)返回字符串中第index个字符:public int length()返回字符串的长度:public int indexOf(String str)返回字符串中第一次出现str的位置:public int indexOf(String str,int fromIndex)返回字符串从fromIndex开始第一次出现str的位置:public boolean equalsIgnoreCase(Strin

Java String类

JAVA String类[转] 1.String对象的初始化 由于String对象特别常用,所以在对String对象进行初始化时,Java提供了一种简化的特殊语法,格式如下: String s = “abc”; s = “Java语言”; 其实按照面向对象的标准语法,其格式应该为: String s = new String(“abc”); s = new String(“Java语言”); 只是按照面向对象的标准语法,在内存使用上存在比较大的浪费.例如String s = new String

Java String类详解

Java字符串类(java.lang.String)是Java中使用最多的类,也是最为特殊的一个类,很多时候,我们对它既熟悉又陌生. 类结构: public final class String extends Object implements Serializable, Comparable<String>, CharSequence 类概述: Java程序中的所有字面值(string literals),即双引号括起的字符串,如"abc",都是作为String类的实例

Java 11 - Java String类

Java String类 字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串. 创建字符串 创建字符串最简单的方式如下: String greeting = "Hello world!"; 在代码中遇到字符串常量时,这里的值是"Hello world!",编译器会使用该值创建一个String对象. 和其它对象一样,可以使用关键字和构造方法来创建String对象. String类有11种构造方法,这些方法提供不同

010 String 类的常用方法都有那些?

String 类的常用方法都有那些? 答:下面列举了20个常用方法.格式:返回类型 方法名 作用. 1.和长度有关: int length() 得到一个字符串的字符个数 2.和数组有关: byte[] getByte() ) 将一个字符串转换成字节数组 char[] toCharArray() 将一个字符串转换成字符数组 String split(String) 将一个字符串按照指定内容劈开 3.和判断有关: boolean equals() 判断两个字符串的内容是否一样 boolean equ

java String类用法

一.String 首先我们要明确,String并不是基本数据类型,而是一个对象,并且是不可变的对象.查看源码就会发现String类为final型的(当然也不可被继承),而且通过查看JDK文档会发现几乎每一个修改String对象的操作,实际上都是创建了一个全新的String对象. 字符串为对象,那么在初始化之前,它的值为null,到这里就有必要提下"".null.new String()三者的区别.null 表示string还没有new ,也就是说对象的引用还没有创建,也没有分配内存空间

String类的常用方法以及知识点总结

一,String的简介: 查阅API中的String类的描述,发现String 类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现. 一旦这个字符串确定了,那么就会在内存区域中就生成了这个字符串.字符串本身不能改变,但str变量中记录的地址值是可以改变的. 字符串的本质是一个字符的数组(String类一旦被创建,就不能被改变). 1.1,String常量池 为了减少在JVM中创建的字符串的数量,字符串类维护了一个字符串池,每当代码创建字符串常量时,