java字符串的操作

在 java语法中,对字符串截取的操作时非常的重要的,下面简单介绍几种常用的字符串的操作:

String str = "this.is.test";

针对上面的str做操作,
截取, substring的用法
    public String substring(int beginIndex, int endIndex)
    第一个int为开始的索引,对应String数字中的开始位置,
    第二个是截止的索引位置,对应String中的结束位置
    1、取得的字符串长度为:endIndex - beginIndex;
    2、从beginIndex开始取,到endIndex结束,从0开始数,其中不包括endIndex位置的字符
    如:
    "hamburger".substring(4, 8) returns "urge"
     "smiles".substring(1, 5) returns "mile"
    取长度大于等于3的字符串a的后三个子字符串,只需a.subString(a.length()-3, a.length());
    String sb = str.substring(3); => s.is.test
  
  其实在java中也有类似javascript的indexOf的操作

    lastIndexOf方法

    返回 String 对象中子字符串最后出现的位置。

    strObj.lastIndexOf(substring[, startindex])

    参数
    strObj   必选项。String 对象或文字。

    substring  必选项。要在 String 对象内查找的子字符串。

    startindex  可选项。该整数值指出在 String 对象内进行查找的开始索引位置。假如省略,则查找从字符串的末尾开始。

 

    indexOf方法

    返回 String 对象内第一次出现子字符串的字符位置。

    strObj.indexOf(subString[, startIndex])

    参数
    strObj  必选项。String 对象或文字。

    subString  必选项。要在 String 对象中查找的子字符串。

    starIndex  可选项。该整数值指出在 String 对象内开始查找的索引。假如省略,则从字符串的开始处查找。

    说明
      indexOf 方法返回一个整数值,指出 String 对象内子字符串的开始位置。假如没有找到子字符串,则返回 -1。

 

    Java中字符串中子串的查找共有四种方法,如下: (区分大小写)
    1、int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引。 
    2、int indexOf(String str, int startIndex):从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引。 
    3、int lastIndexOf(String str) :返回在此字符串中最右边出现的指定子字符串的索引。 
    4、int lastIndexOf(String str, int startIndex) :从指定的索引处开始向后搜索,返回在此字符串中最后一次出现的指定子字符串的索引。

    String s = "xXccxxxXX";  // 从头开始查找是否存在指定的字符   

        //结果如下    

          System.out.println(s.indexOf("c"));     //2   // 从第四个字符位置开始往后继续查找,包含当前位置       

     System.out.println(s.indexOf("c", 3));  //3   

        System.out.println(s.indexOf("y"));     //-1     //若指定字符串中没有该字符则系统返回-1     

             System.out.println(s.lastIndexOf("x"));  //6   x和X是区分大小写的

     System.out.println(s.lastIndexOf("X")) ; // 8

 

    java的split和javascript的split用法不一样,

       String str = "192.168.0.1"; 
       String[] strarray = str.split("."); =>  String[] strarray = str.split("\\.");
       for (int i = 0; i < strarray.length; i++) 
           System.out.println(strarray[i]); 

结果是什么也没输出,

split(".")改为split("\\."),将输出正确结果: 

192 
168 

1

posted on 2018-03-20 19:32  努力做一个伪程序员  阅读(367)  评论(0编辑  收藏  举报

导航