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   努力做一个伪程序员  阅读(372)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示