`

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) ;
    }

分享到:
评论

相关推荐

    Java中String类的方法及说明.pdf

    Java中String类的方法及说明.pdf

    Java中String类的方法及说明.doc

    Java中String类的方法及说明 对于java 初级学者 有好处没坏处

    关于JAVA中int、String的类型转换

    初学者用于JAVA中int、String的类型转换的几种方法 并说明这其中的区别。

    char,string全部函数方法说明

    里面记录了全部的char,string函数方法的说明以及使用方法,对新手来说是一个宝典哦。。

    JAVA类的定义及继承演示

    定义两个类Dog,SmallDog,SmallDog继承Dog 说明一:关于Dog 两个属性,狗的名字(dogName,...最后,在测试类中的main方法中生成SmallDog类的对象,访问属性dogName和dogAge,并打印出他们的值;调用dogWalk(),看看效果.

    计算机后端-Java-Java核心基础-第21章 常用类 18. 面试中String算法考查的说明.avi

    计算机后端-Java-Java核心基础-第21章 常用类 18. 面试中String算法考查的说明.avi

    java继承和接口,常用类

    根据“实验4说明”文件夹中给出的源程序MainTwo.java,StuList.java(其中的类实现了接口MyList),Student.java(其中的类Student是抽象类,其中,print( )方法是抽象方法)。 第二部分 编写一个类,该类的功能是...

    Java中各种工具类代码,.java文件以及使用说明

    包含各种工具类文件如ChangePinYin.java、CollectionUtil.java、DateUtil.java、DBConnectionUtil.java、FileUtil.java、FtpUtil.java、HttpClientUtil.java、MathUtil.java、MD5Util.java、StringUtil.java、...

    java常用工具类的使用

    该类的大部分构造器和方法都已经过时,但是该类使用非常方便,因此目前使用还很普遍,该类的另一个主要功能是,在数据库操作中,它允许将毫秒值表示为SQL DATE值,是数据库操作中java.sql.Date的父类。关于数据库...

    Java类库详细说明

    字符串是字符的序列,它是组织字符的基本数据结构,从某种程度... 在Java中,存放字符串常量的对象用String类,对于字符串变量,由于程序中经常需要对它做添加,插入,修改等操作,一般存放在StringBuffer类的对象中。

    Java常用工具类使用指南.docx

    Java常用工具类使用指南,包含常用的方法说明,快速提升开发效率和代码质量。 Java 中 String 应该是日常用的最多一个类吧,平常我们很多代码需要围绕 String ,做一些处理。 JDK 提供 String API 虽然比较多,但是...

    java源码包---java 源码 大量 实例

    Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字  Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象...

    java 实现成员方法的ajax自动注册类

    java中使用Ajax的最简单实现,经典,绝对值得研究学习! 相关说明如下: Xajax类功能描叙:Xajax将服务器端JavaBean中以on开始的函数生成客户端可供javascript调用的同名函数,从而实现 服务器端响应客户端事件进行...

    java重要知识点总结

    4.java类的程序入口方法: public static void main(String[] args){ } 5.public类名必须跟java文件同名,且一个java文件中只能包括一个public类。 6.java注释: // 单行注释 /* */ 多行注释(不能嵌套) //* *...

    java常用char,string函数

    里面有全部string的函数说明,char函数说明等,对新手来说是一个很好的东西哦

    String封装工具类

    java编写的一个封装了一些比较实用的功能,具体看说明文档

    android apk 反编译java文件对应的资源批量修改(更改为R.java文件中的R.string.name格式)

    Android的apk文件反编译后,甚多的资源...(2)从反编译出的文件夹中,找到public.xml文件,依据代码说明执行代码,可以将反编译出的java文件引用的资源数字重新更改为R.type.name格式,使得java文件资源引用重新关联。

    JAVA面试题最全集

    一个“.java”原文件中是否可以包括多个类(不是内部类)? 53.掌握内部类和接口的概念 54.StringTokenizer类的使用 55.数据结构,如何遍历List中的元素? 如果要按照键值保存或者访问数据,使用什么数据结构? ...

    125集专攻JAVA基础 JAVA零基础入门学习视频教程 动力节点JAVA视频教程.txt

    北京动力节点-Java编程零基础教程-119-Java基本语法-方法详解-方法的调用过程-方法调用过程中栈内存的变化.avi 北京动力节点-Java编程零基础教程-120-Java基本语法-方法的重载-什么是方法重载.avi 北京动力节点-...

Global site tag (gtag.js) - Google Analytics