行业资讯 2025年08月6日
0 收藏 0 点赞 512 浏览 1316 个字
摘要 :

文章目录 1.String.replace() API 2.使用 String.replace() 替换字符 3.使用 String.replace() 替换子字符串 4.不支持正则表达式  5.>null不允许作为方法的两个参数 ……




  • 1.String.replace() API
  • 2.使用 String.replace() 替换字符
  • 3.使用 String.replace() 替换子字符串
  • 4.不支持正则表达式
  •  5.>null不允许作为方法的两个参数

String.replace() API 用于搜索一个字面子字符串,并将每个出现的子字符串替换为指定的替换字符串。搜索子字符串的起始位置从字符串的开头开始,即索引0。

需要注意的是,类似的方法 String.replaceAll() 使用正则表达式搜索和替换所有子字符串。

1.String.replace() API

replace() 方法有两个重载版本:

public String replace(char oldChar, char newChar);
public String replace(CharSequence target, CharSequence replacement);

第一个方法接受 char 类型的参数。它在字符串中搜索指定的 oldChar,并将每个出现的 oldChar 替换为 newChar。

第二个方法接受 String 类型的参数。它在字符串中搜索指定的目标子字符串,并将每个出现的子字符串替换为指定的替换字符串。

2.使用 String.replace() 替换字符

以下Java程序将所有出现的小写字母 ‘o’ 替换为大写字母 ‘O’。

String message = \"Hello world !!\";
Assertions.assertEquals(\"HellO wOrld !!\", message.replace(\'o\', \'O\'));

3.使用 String.replace() 替换子字符串

以下Java程序将所有出现的子字符串 “Hello” 替换为新的字符串 “Hi”。

String message = \"Hello world !!\";
Assertions.assertEquals(\"Hi world !!\", message.replace(\"Hello\", \"Hi\"));

4.不支持正则表达式

不允许将正则表达式作为方法参数。如果我们使用正则表达式模式,它将被视为普通字符串。

在下面的程序中,如果支持正则表达式,正则表达式模式 [H] 会匹配字符 H。但是 replace() 不支持正则表达式,因此找不到匹配项。

String message = \"Hello world !!\";
Assertions.assertEquals(\"Hello world !!\", message.replace(\"[H]\", \"h\"));

 5.>null不允许作为方法的两个参数

这会引发 NullPointerException(空指针异常)。所以,在使用 String.replace() 方法时,请确保参数不为 null

Assertions.assertThrows(NullPointerException.class, () -> {
  message.replace(null, \"O\");
});
Assertions.assertThrows(NullPointerException.class, () -> {
  message.replace(\"o\", null);
});

 

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/9173.html

管理员

相关推荐
2025-08-06

文章目录 一、Reader 接口概述 1.1 什么是 Reader 接口? 1.2 Reader 与 InputStream 的区别 1.3 …

988
2025-08-06

文章目录 一、事件溯源 (一)核心概念 (二)Kafka与Golang的优势 (三)完整代码实现 二、命令…

465
2025-08-06

文章目录 一、证明GC期间执行native函数的线程仍在运行 二、native线程操作Java对象的影响及处理方…

348
2025-08-06

文章目录 一、事务基础概念 二、MyBatis事务管理机制 (一)JDBC原生事务管理(JdbcTransaction)…

456
2025-08-06

文章目录 一、SnowFlake算法核心原理 二、SnowFlake算法工作流程详解 三、SnowFlake算法的Java代码…

517
2025-08-06

文章目录 一、本地Jar包的加载操作 二、本地Class的加载方法 三、远程Jar包的加载方式 你知道Groo…

832
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号