Java中 String的常用方法总结

简介: Java中 String的常用方法总结

一、String中常用的方法,我以代码的形式,来说明这些常用的方法。

@Test
    public void test1(){
        //1.返回字符串的长度
        String s1 = "helloworld";
        System.out.println(s1.length());
        //2.返回某索引处的字符
        System.out.println(s1.charAt(1));
        //3.判断字符串是否是空字符串
        System.out.println(s1.isEmpty());
        //4.将String中的所有字符串转换成小写
        String s2 = "ShoPPing";
        String s3 = s2.toLowerCase();
        System.out.println(s3);
        //5.将String中的所有字符串转换成大写
        String s4 = s2.toUpperCase();
        System.out.println(s4);
        //6.返回字符串的副本,忽略前导空白和尾部空白
        String s5 = "  An  dro  id   ";
        String s6 = s5.trim();
        System.out.println("**********"+s5+"**********");
        System.out.println("**********"+s6+"**********");
        //7.比较字符串的内容是否相同
        System.out.println(s1.equals(s5));
        //8.与equals方法类似,这个忽略大小写
        String s7="abcDef";
        String s8="ABCDef";
        System.out.println(s7.equals(s8));//false
        System.out.println(s7.equalsIgnoreCase(s8));//true
        //9.将指定字符串连接到此字符串的结尾,等价于"+"
        String s9="abc";
        String s10 = s9.concat("def");
        System.out.println(s10);
        //10.比较两个字符串的大小
        String s11="abe";
        System.out.println(s9.compareTo(s11)); //-2  说明s9小于s11
        //11.返回一个新的字符串,它是此字符串的从bedinIndex开始截取到最后的一个子字符串
        String s12 = "我一定要学会Android";
        System.out.println(s12.substring(6));
        //12.返回一个新字符串,它是此字符串从beginIndex开始截取到endIndex(不包括)的一个子字符串
        String s13 = s12.substring(2, 6);
        System.out.println(s13);
    }

输出结果如下:

当然String中,不止这些方法,只不过这些是比较常用的方法。

下面再说一些其他的方法:

还是以代码为例:

@Test
    public void test2(){
        //1.测试此字符串是否以指定的后缀结束
        String s1 = "helloworld";
        System.out.println(s1.endsWith("ld"));//true
        //2.测试此字符串是否以指定的前缀开始
        System.out.println(s1.startsWith("hel"));//true
        //3.测试此字符串从指定索引开始的字符串是否以指定前缀开始
        System.out.println(s1.startsWith("ow", 4));//true
        //4.当且仅当此字符串包含指定的char值序列时,返回true;
        System.out.println(s1.contains("lo"));//true
        System.out.println(s1.contains("lowld"));//false
        //5.返回指定子字符串在此字符串中第一次出现处的索引
        System.out.println(s1.indexOf("el"));//1
        //6.返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始
        System.out.println(s1.indexOf("ow",3));//4
        //7.返回指定子字符串在此字符串中最右边出现处的索引
        System.out.println(s1.lastIndexOf("o"));//6
        //8.返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索
        System.out.println(s1.lastIndexOf("o", 5));//4
    }

下面是String中关于正则的方法:

@Test
    public void test3(){
        //1.返回一个新的字符串,它是通过用newChar替换此字符串中出现的所有oldChar得到的
        String s1="你好,我是程序员小白,小白!";
        System.out.println(s1.replace('小','大'));
        //2.使用指定的字面值替换序列,替换此字符串所有匹配字面值目标序列的子字符串
        System.out.println(s1.replace("小白","大牛"));
        //3.使用给定的replacement替换此字符串所有匹配给定的正则表达式的子字符串
        String s2="12Hello2342World234Android";
        String s3 = s2.replaceAll("\\d+", ",").replaceAll("^,|,$", "");
        System.out.println(s3);
        //4.告知此字符串是否匹配给定的正则表达式
        String s4="123456";
        //判断s4字符串中是否全部由数字组成,即1-n个数字组成
        boolean matches = s4.matches("\\d+");
        System.out.println(matches);
        String tel="0373-12345678";
        //判断这是否是河南的一个固定电话
        boolean matches1 = tel.matches("0373-\\d{7,8}");
        System.out.println(matches1);
        //5.根据给定正则表达式的匹配拆分此字符串
        String s5="hello|world|android";
        String[] split = s5.split("\\|");
        for (int i = 0; i < split.length; i++) {
            System.out.println(split[i]);
        }
        System.out.println("****************************");
        //6.根据匹配给定的正则表达式来拆分此字符串,最多不能超过limit个,如果超过了,剩下的都全部放到最后一个元素中
        String s6="hello.world.android";
        String[] split1 = s6.split("\\.");
        for (int i = 0; i < split1.length; i++) {
            System.out.println(split1[i]);
        }
    }

输出结果如下:

以上是String常用的方法总结,如有问题可以在评论区指正,一起学习,共同进步!


目录
相关文章
|
23天前
|
Java 测试技术 开发者
Java零基础-indexOf(String str)详解!
【10月更文挑战第14天】Java零基础教学篇,手把手实践教学!
108 65
|
11天前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
50 4
|
21天前
|
Java API
Java 对象释放与 finalize 方法
关于 Java 对象释放的疑惑解答,以及 finalize 方法的相关知识。
42 17
|
1月前
|
Java
【编程基础知识】(讲解+示例实战)方法参数的传递机制(值传递及地址传递)以及String类的对象的不可变性
本文深入探讨了Java中方法参数的传递机制,包括值传递和引用传递的区别,以及String类对象的不可变性。通过详细讲解和示例代码,帮助读者理解参数传递的内部原理,并掌握在实际编程中正确处理参数传递的方法。关键词:Java, 方法参数传递, 值传递, 引用传递, String不可变性。
55 1
【编程基础知识】(讲解+示例实战)方法参数的传递机制(值传递及地址传递)以及String类的对象的不可变性
|
15天前
|
Java 测试技术 Maven
Java一分钟之-PowerMock:静态方法与私有方法测试
通过本文的详细介绍,您可以使用PowerMock轻松地测试Java代码中的静态方法和私有方法。PowerMock通过扩展Mockito,提供了强大的功能,帮助开发者在复杂的测试场景中保持高效和准确的单元测试。希望本文对您的Java单元测试有所帮助。
32 2
|
23天前
|
Java 开发者
在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口
【10月更文挑战第20天】在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口。本文揭示了这两种方式的微妙差异和潜在陷阱,帮助你更好地理解和选择适合项目需求的线程创建方式。
17 3
|
25天前
|
Java 大数据 API
别死脑筋,赶紧学起来!Java之Steam() API 常用方法使用,让开发简单起来!
分享Java Stream API的常用方法,让开发更简单。涵盖filter、map、sorted等操作,提高代码效率与可读性。关注公众号,了解更多技术内容。
|
23天前
|
Java 开发者
在Java多线程编程中,选择合适的线程创建方法至关重要
【10月更文挑战第20天】在Java多线程编程中,选择合适的线程创建方法至关重要。本文通过案例分析,探讨了继承Thread类和实现Runnable接口两种方法的优缺点及适用场景,帮助开发者做出明智的选择。
16 2
|
23天前
|
安全 Java
Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧
【10月更文挑战第20天】Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧,包括避免在循环外调用wait()、优先使用notifyAll()、确保线程安全及处理InterruptedException等,帮助读者更好地掌握这些方法的应用。
15 1
|
23天前
|
Java 开发者
Java多线程初学者指南:介绍通过继承Thread类与实现Runnable接口两种方式创建线程的方法及其优缺点
【10月更文挑战第20天】Java多线程初学者指南:介绍通过继承Thread类与实现Runnable接口两种方式创建线程的方法及其优缺点,重点解析为何实现Runnable接口更具灵活性、资源共享及易于管理的优势。
28 1

热门文章

最新文章