【问题标题】:How to remove a character in a String in Java? [duplicate]如何在Java中删除字符串中的字符? [复制]
【发布时间】:2016-11-28 13:54:02
【问题描述】:

我正在解决一些初学者 Java 示例,有一个问题我必须返回一个新字符串,其中索引 n 处的字符已被删除。

例如:

missingChar("kitten", 1) → "ktten"

我必须删除字符串中的第一个字符。

我试过了,但没用:

for (int i=0;i<str.length()-1;i++){
    while (i==n){
        str=str.replaceFirst(String.valueOf(str.charAt(i)),"");
        return str;
    }
}

谁能告诉我我的代码有什么问题?

【问题讨论】:

  • “但它不起作用”。什么没有奏效?你被困在哪里了?你有例外吗?
  • 你要找的方法是substring()

标签: java arrays string


【解决方案1】:

这里有一个简单的方法来做你想做的事:

   String missingChar(String s, int i) {
        return s.substring(0, i) + s.substring(i+1);
    }

您在问题中提供的代码替换了整个字符串中第一次出现的字符。而且,顺便说一句,由于 return 语句,if 将具有与 while 相同的效果。 for循环也没有用,因为你有字符的索引(我猜是n?)

【讨论】:

  • 是的,我想循环是不必要的 String a = str.substring(0, n); String b = str.substring(n+1, str.length()); return a+b 工作,谢谢!
猜你喜欢
  • 2014-01-26
  • 1970-01-01
  • 1970-01-01
  • 2012-04-18
  • 2018-03-23
  • 1970-01-01
  • 2015-02-19
  • 1970-01-01
  • 2021-04-17
相关资源
最近更新 更多