String类的常用方法大全!


(1)基本方法

  • int length():返回字符串的长度
  • char charAt(n):返回索引处的字符
  • boolean isEmpty():判断字符串是否为空
  • String toLowerCase():所有字符转换为小写
  • String toUpperCase():所有字符转换为大写
  • String substring(4,5):截取字符串,前闭后开
  • String trim():忽略前导空白和尾部空白
  • int compareTo():比较两个字符串的大小
  • String concat(String str):指定字符串连接到尾部
  • boolean equals(Object obj):判断字符串是否相同

代码示例如下:

 @Test
    public void test1(){
        String s1 = " abcdefghijkl ";
        String s2 = "abcdefghijk";
        System.out.println(s1.length());
        System.out.println(s1.charAt(3));
        System.out.println(s1.isEmpty());
        System.out.println(s1.toLowerCase());
        System.out.println(s1.toUpperCase());
        System.out.println(s1.substring(4,5));
        System.out.println(s1.trim());
        System.out.println(s1.compareTo(s2));
        System.out.println(s2.concat("l"));
        System.out.println(s2.equals(s1));
    }

代码结果示例如下:
在这里插入图片描述

(2)关于测试和索引方法

  • boolean endsWith(String str):测试此字符是否以指定的后缀结束
  • boolean startsWith(String str):测试此字符是否以指定的前缀开始
  • boolean startsWith(String str,int toffset):从指定位置开始,是否以指定的前缀开始
  • boolean contains(char s):字符串包含指定的char值时,返回true
  • int indexOf(String str):返回第一次出现指定字符串的索引位置
  • int lastIndexOf(String str):返回从右边第一次出现指定字符串的索引位置

代码示例如下:

@Test
    public void test2(){
        String str1 = "helloworld";

        System.out.println(str1.endsWith("ld"));

        System.out.println(str1.startsWith("He"));

        System.out.println(str1.startsWith("ll",2));

        System.out.println(str1.contains("e"));

        System.out.println(str1.indexOf("l"));

        System.out.println(str1.lastIndexOf("l"));
    }

代码结果示例如下:

在这里插入图片描述

(3)匹配替换(正则)

  • String replace(String str1,String str2):str2替换str1
  • String replace(“str1”,“str2”);指定str2替换str1
  • String replaceAll():用正则匹配,然后替换
  • boolean matches():是否匹配正则表达式
  • String[] split():根据给定的正则拆分字符串

代码示例如下:

public void test3(){
        String str1 = "西安全运会加油";

        String str2 = str1.replace('安','京');
        System.out.println(str2);

        String str3 = str1.replace("西安","北京");
        System.out.println(str3);

        String str4 = "12fasfjafhef34rsdjlkfjsdi3r43";
        //把数字换成,如果结尾和开头有,则去掉
        //^开头 $结尾
        String str5 = str4.replaceAll("\\d+",",").replaceAll("^,|$","");
        System.out.println(str5);
        //判断是否全是由数字组成
        String str6 = "12345";
        System.out.println(str6.matches("\\d+"));
        //判断是否是以029-开头,后面是否时6-7位数
        String str7 = "029-123456";
        System.out.println(str7.matches("029-\\d{6,7}"));

        String str8 = "hell0|world|!";
        String[] strs = str8.split("\\|");
        for (int i=0;i < strs.length;i++){
            System.out.println(strs[i]);
        }
    }

代码结果示例如下:

在这里插入图片描述

(4)简单的正则表达式

由于后面的方法需要使用到java中的正则表达式,我们这块对一些简单的正则规则进行补充,增强大家的理解。

注意: java中需要有两个反斜杠才能被解析为其他语言中的转义作用。

  • ^:匹配输入字符串开始的位置
  • $:匹配输入字符串结尾的位置
  • *:零次或多次匹配前面的字符或子表达式
  • +:一次或多次匹配前面的字符或子表达式
  • ?:零次或一次匹配前面的字符或子表达式
  • {n}:n 是非负整数,正好匹配 n 次
  • [xyz]:字符集,匹配包含的任一字符
  • \b:匹配一个字边界,即字与空格间的位置
  • \B:非字边界匹配
  • \d:数字字符匹配
  • \D:非数字字符匹配
  • \n:换行符匹配
  • [a-z]:字符范围,匹配指定范围内的任何字符
  • [^a-z] :反向范围字符,匹配不在指定的范围内的任何字符
  • \r:匹配一个回车符
  • \s:匹配任何空白字符,包括空格、制表符、换页符等
  • \S:匹配任何非空白字符

对String类中的方法就记录到此为止了,欢迎大家补充!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值