java中字符串常见的方法及总结

 更新时间:2022年12月29日 09:28:06   作者:Anoxia_Boi  
这篇文章主要介绍了java中字符串常见的方法及总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

java字符串常见的方法

字符串的比较

1.equals()方法:常用于比较两个字符串是否相等,返回值类型是boolean,参数是Object类

public class test {
    public static void main(String[] args) {
        String n1 = "saf";
        String n2 = "saf";
        System.out.println(n1.equals(n2)); // true
    }
}

字符串的搜索

1.indexOf()方法:使用indexOf方法可以从字符串的首部进行搜索,当前字符串中指定子字符串的下标位置,返回值为int类型,如果存在,则返回子字符串的下标位置。如果不存在,则返回-1。

"Hello".indexOf("l"); // 2

2.lastIndexOf()方法:lastIndexOf()方法是从字符串的尾部进行搜索,返回值与indexOf()方法一致

"Hello".lastIndexOf("l"); // 3

3.startsWith()方法:用于判断字符串是否以指定字符串开头,返回值为boolean类型

"Hello".startsWith("He"); // true

4.endWith()方法:用于判断字符串是否以指定字符串结尾,返回值为boolean类型

"Hello".endsWith("lo"); // true

5.contains()方法:用于查找当前字符串中是否存在指定子字符串,返回值为boolean类型

"Hello".contains("lo"); // true

截取子字符串

1.substring()方法:使用substring()方法可以从当前字符串中,截取指定下标区间的子字符串,参数是int,返回值是String类型

"大漠孤烟直".substring(2); // 孤烟直
"大漠孤烟直".substring(0,2); // 大漠

去除首尾空白字符串

1.trim()方法:trim()方法可以移除字符串首尾空白字符,空白字符包括空格,\t,\n,\r.无参数,返回值类型是 String。

"  \tHello\r\n ".trim(); // 返回 "Hello"

替换字符串

1.replace()方法:根据字符或字符串替换

String s = "hello";
s.replace('l', 'w'); // "hewwo",所有字符'l'被替换为'w'
s.replace("ll", "~~"); // "he~~o",所有子串"ll"被替换为"~~"

2.replaceAll()方法:通过正则表达式,把匹配的子字符串统一替换

String s = "A,,B;C ,D";
s.replaceAll("[\\,\\;\\s]+", ","); // "A,B,C,D"

分割字符串

1.split()方法:通过正则表达式传入值,参数值为字符串类型,返回值类型是字符串数组

String s = "A,B,C,D";
String[] ss = s.split("\\,"); // {"A", "B", "C", "D"}

拼接字符串

1.join()方法:拼接字符串使用静态方法join(),他用指定的字符串连接字符串数组

String[] arr = {"A", "B", "C"};
String s = String.join("***", arr); // "A***B***C"

格式化字符串

1.format()方法:fomat()静态方法,可以传入其他参数,替换占位符,然后生成新的字符串。参数是字符串和动态参数,返回值是字符串类型

String s = "Hi %s, your score is %d!";
System.out.println(s.format("Alice", 80)); // 字符串对象调用
System.out.println(String.format("Hi %s, your score is %.2f!", "Bob", 59.5)); // 字符串类调用

类型转换

1valueOf()方法:是静态方法,可以把任意基本类型或引用类型转换为字符串,这是一个重载方法,编译器会根据参数自动选择合适的方法。返回值是String类型

String.valueOf(123); // "123"
String.valueOf(45.67); // "45.67"
String.valueOf(true); // "true"
String.valueOf(new Object()); // 类似java.lang.Object@636be97c

2.parseInt()方法:把字符串转为int类型,参数是String类型,返回值是int类型

int n1 = Integer.parseInt("123"); // 123
int n2 = Integer.parseInt("ff", 16); // 按十六进制转换,255

3.parseBoolean()方法:把字符串转为boolean类型,参数是int类型,返回值是boolean类型

boolean b1 = Boolean.parseBoolean("true"); // true
boolean b2 = Boolean.parseBoolean("FALSE"); // false

转换为char[]字符数组

1.String和char[]类型可以互相转化,方法是

char[] cs = "Hello".toCharArray(); // String -> char[]
String s = new String(cs); // char[] -> String

修改char[]的时候,String里面的值不会变,因为new String() 的时候指向了一个新的内存空间

char[] cs = "Hello".toCharArray();
String s = new String(cs);
System.out.println(s);
cs[0] = 'X';
System.out.println(s);

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 你应该知道的这些Mybatis-Plus使用技巧(小结)

    你应该知道的这些Mybatis-Plus使用技巧(小结)

    这篇文章主要介绍了你应该知道的这些Mybatis-Plus使用技巧(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Java无限级树(递归)超实用案例

    Java无限级树(递归)超实用案例

    下面小编就为大家带来一篇Java无限级树(递归)超实用案例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • 深入理解Java 线程池

    深入理解Java 线程池

    这篇文章主要介绍了Java 线程池的相关资料,文中讲解非常细致,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • Springboot通过请求头获取当前用户信息方法详细示范

    Springboot通过请求头获取当前用户信息方法详细示范

    这篇文章主要介绍了Springboot通过请求头获取当前用户信息的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-11-11
  • 在IDEA里gradle配置和使用的方法步骤

    在IDEA里gradle配置和使用的方法步骤

    这篇文章主要介绍了在IDEA里gradle配置和使用的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • logback使用filter过滤日志操作

    logback使用filter过滤日志操作

    这篇文章主要介绍了logback使用filter过滤日志操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • SpringBoot快速整合Mybatis、MybatisPlus(代码生成器)实现数据库访问功能

    SpringBoot快速整合Mybatis、MybatisPlus(代码生成器)实现数据库访问功能

    这篇文章主要介绍了SpringBoot快速整合Mybatis、MybatisPlus(代码生成器)实现数据库访问功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • 一文详解MVCC的执行原理

    一文详解MVCC的执行原理

    MVCC是一种并发控制机制,用于解决数据库并发访问中,数据一致性问题,它通过在读写操作期间保存多个数据版本,以提供并发事务间的隔离性,本文将和大家简单聊聊MVCC的执行原理,需要的朋友可以参考下
    2023-12-12
  • SpringBoot2.0整合Redis自定义注入bean组件配置的实战教程

    SpringBoot2.0整合Redis自定义注入bean组件配置的实战教程

    这篇文章主要介绍了SpringBoot2.0整合Redis自定义注入bean组件配置,我们将基于SpringBoot2.0整合搭建的微服务项目为奠基,开启中间件Redis的实战之路,需要的朋友可以参考下
    2023-06-06
  • springcloud本地服务不注册到注册中心的解决方案

    springcloud本地服务不注册到注册中心的解决方案

    这篇文章主要介绍了springcloud本地服务不注册到注册中心,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07

最新评论