如何使用replace(char,char)将字符" b"的所有实例全部替换为空。

例如:

Hambbburger to Hamurger

编辑:有一个约束,我只能使用1.4.2,这意味着没有重载版本的replace!

你不能因为什么都不是字符! 为什么不能使用replace(String,String)?

Java的可能重复项:从字符串中删除所有出现的char

嗨,Dogbane,适用于Java 5及更高版本,其1.4.2版将没有重载版本。

还有一个replaceAll函数使用字符串,但是请注意,它会将它们评估为正则表达式,但是替换单个字符就可以了。

这是一个例子:

String meal ="Hambbburger";

String replaced = meal.replaceAll("b","");

请注意,replaced变量是必需的,因为replaceAll不会更改字符串的位置,而是创建一个替换的字符串(String在Java中是不可变的)。

如果要替换的字符在正则表达式中具有不同的含义(例如. char将匹配任何char,而不是点),则需要quote第一个参数,如下所示:

String meal ="Ham.bur.ger";

String replaced = meal.replaceAll(Pattern.quote("."),"");

它对于b可以正常工作,但是对于.则不行...

@Sean,我第一次错过了函数名称,然后对其进行了编辑:)

你为什么改变答案? String.replace()更好!

关于String#replace(@MByD)的答案已经很不错了,因为replace重载是java6或更高版本,所以请不要理会

(@Pablo Fernandex)是否有严格的方法仅使用replace(char,char)来实现这一目标?

@Pablo没有看到要求。 Java 1.4.x:令人讨厌。我去找另一份工作:-)

@没有没有

@Sean,不用担心,最后一句话不是原始问题的一部分:)

@Pablo对此表示感谢。

@Sean抱歉,我这么晚才传达。

字符串是不可变的,因此请确保将结果分配给字符串。

String str ="Hambbburger";

str = str.replace("b","");

如果使用Java 6,则不需要replaceAll。请参见此处:replace

我知道有一个replace重载!

试试这个代码。

public class main {

public static void main(String args[]){

String g="Hambbburger.i want to eat Hambbburger.";

System.out.print(g);

g=g.replaceAll("b","");

System.out.print("---------After Replacement-----

");

System.out.print(g);

}

}

输出

Hambbburger.i想吃汉堡包。 ---------更换后-----

Hamurger.i想吃Hamurger。

String text ="Hambbburger";

text = text.replace('b', '\0');

'\0'代表ASCII码中的NUL。

@Tom打印Hamurger。

然后,您的控制台会以与我的不同的方式打印它,因为我的控制台显式显示了\0字符(不能在此处显示它,因为SO删除了它们)。因此,此解决方案可能取决于将在其上运行的系统。奇怪。

应该删除答案,因为它是错误的\000除了NUL字符外什么都不代表。更换前后检查text的长度!它没有改变。

@GuidoFlohr编辑答案。的确,长度没有变化,并且那些NUL仍然存在。但这确实满足了OP的要求。

@Andrew OP要求什么都不要替换,但NUL字节不是什么,而是有时看起来什么都不是(并且比NUL还要有很多不可打印的字符,例如" u200b",也称为零宽度空间)。在代码中添加" System.out.println(text)",将输出重定向到文件,然后在vi / vim中打开它。您将读到" Ham ^ A ^ A ^ Aurger",因为NUL字节是CTRL-A。原始海报清楚地表示"删除bs",而您的代码则不这样做。抱歉,如果这听起来很粗鲁,但您的回答对初学者来说很混乱,而且实际上没有帮助。

"……有时候看起来……"->"…………有时候看起来……"

String str="aabbcc";

int n=str.length();

char ch[]=str.toCharArray();

for(int i=0;i

{

for(int j=i+1;j

{

if(ch[i]==ch[j])

{

ch[j]='*';

}

}

}

String temp=new String(ch);

for(int i=0;i

{

if(temp.charAt(i)!='*')

System.out.print(temp.charAt(i));

}

您也可以更改相同字符的位置。此代码也将起作用。

String中的replaceAll无法正常工作。建议始终使用replace()

例如:-

String s="abcdefabcdef";

s=s.replace("a","");

嗨,欢迎来到。 replaceAll很好,不确定从哪里得到的-您是否有特定的越野车箱?另外,您也不会回答这个问题-OP想要删除一个字符,而没有办法通过replace(char,char)来实现。

java string replace 重载_关于Java:如何使用replace(char,char)替换字符b的所有实例为空...相关推荐

  1. java string最大长度_一个Java字符串中到底有多少个字符?

    作者:鸟窝 依照Java的文档, Java中的字符内部是以UTF-16编码方式表示的,最小值是 (0),最大值是(65535), 也就是一个字符以2个字节来表示,难道Java最多只能表示 65535个 ...

  2. java string hash变量_聊聊 Java 中 HashMap 初始化的另一种方式

    如果你接触过不同的语言,从语法和代码层面来说,Java 是一种不折不扣的"臃肿.啰嗦"的语言,从另一方面来说这种臃肿和啰嗦也体现了它严谨的一面,作为适合构建大型.复杂项目的理由之一 ...

  3. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  4. java string的作用_浅谈java String不可变的好处

    一.java内部String类的实现: java 8: public final class String implements java.io.Serializable, Comparable, C ...

  5. android string拼接字符串_「JAVA」细述合理创建字符串,分析字符串的底层存储,你不该错过...

    Java基础之字符串操作--String 字符串 什么是字符串?如果直接按照字面意思来理解就是多个字符连接起来组合成的字符序列.为了更好的理解以上的理论,我们先来解释下字符序列,字符序列:把多个字符按 ...

  6. 在java中方法重载的要求,Java方法的重载

    Java方法的重载 方法重载:在类中方法名称相同,但是形式参数不同 public class Demo15 { public static void main(String[] args) { int ...

  7. java是什么格式_是java格式

    错误:编码GBK的不可映射字符的解决办法 最近在重新补javaSE的基础,编辑器编写完代码以后,在控制台运行代码段的时候,出现了以下的错误提示:错误:编码GBK的不可映射字符 在通过查询谷哥和度娘以后 ...

  8. java多态调用优先级_关于java的多态方法调用顺序的问题

    使用父类类型的引用指向子类的对象,该引用调用的师父类中定义的方法和变量,变量不能被重写(覆盖):如果子类中重写了父类中的一个方法,那么在调用这个方法的时候,将会调用子类中的这个方法: 注意特殊情况,如 ...

  9. java提高篇四_(转)java提高篇(四)-----理解java的三大特性之多态

    面向对象编程有三大特性:封装.继承.多态. 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据.对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法. 继承 ...

最新文章

  1. [Python]网络爬虫(三):异常的处理和HTTP状态码的分类
  2. smarty去除html标签,Smarty与脚本中的html标签爆裂
  3. 猫狗分类--Tensorflow实现
  4. 继承,is,as,多态
  5. postgresql查询mysql库_postgresql 查看数据库,表,索引,表空间以及大小
  6. qt获取本机全部ipv4_Qt之获取本机网络信息(MAC, IP等等,很全)
  7. 关于DevExpress的心得
  8. AcWing 1960. 闪烁(状态压缩+枚举)
  9. asp.net mvc 2.0 TryValidateModel(Object)方法
  10. 识别数学公式_新品独家发布(免费送码)丨极度公式 数学公式 OCR 识别编辑 LaTeX 公式软件...
  11. mysqlplus 批量插入_解决SpringBoot+Druid+Mybatis Plus 执行MySQL批量插入,更新 报错的问题...
  12. 计算机任何启动论文,启动管理器论文10篇_发表之家
  13. 运用流体布局的html代码,div+css布局之流体浮动布局_html/css_WEB-ITnose
  14. java观察者模式举例
  15. SlideLive:提供阶梯类型PPT模板下载
  16. 干货|仿古瓷砖的专业知识总结
  17. CocosCreator幼麟麻将搭建步骤
  18. 记录——python与华为云对象存储服务OBS
  19. 蓝牙单火开关(天猫精灵生态)方案
  20. iMeta和CGM联合报告:中科院生态中心邓晔-气候变化驱动核心微生物的迁移(5.4晚8点)...

热门文章

  1. 小议传统分层与新式分层,抑或与DDD分层
  2. asp.net如何生成图片验证码
  3. AS3图像抖动效果源码。
  4. DB2常用傻瓜问题1000问(之一)
  5. 地壳中元素含量排名记忆口诀_广州地化所等发现洋内弧大陆地壳成熟新机制
  6. 【mysql分区分表】mysql 按时间分区 【partition】
  7. html画特殊图形(待修改)
  8. Android RecyclerView 向上偏移解决、添加自定义分割线,瀑布流,ScrollView嵌套RecyclerView滑动卡顿
  9. css scale 缩放基准点
  10. C#图片按指定大小分割