从 Java 中的字符串中删除特定字符

新手上路,请多包涵

例如,给定一个字符串 Battle of the Vowels:Hawaii vs Gronzy 当我们将要删除的字符指定为 aeiou 时,该函数应将字符串转换为 Bttl f th V wls:Hw vs Grzny

在本书 Programming Interviews Exposed 中发现了这个问题。这是用 C 语言解释的,但是我对 Java 很感兴趣。

原文由 SuperMan 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 548
2 个回答
public class RemoveChars {

    char[] replaceChar = {'a','e','i','o','u'};

    public static void main(String[] args) {
        String src = "Battle of the Vowels:Hawaii vs Gronzy";
        System.out.println(new RemoveChars().removeChar(src));
    }

    public String removeChar(String src){
        char[] srcArr = src.toCharArray();
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < srcArr.length; i++) {
            char foundChar = isFound(srcArr[i]);
            if(foundChar!='\0')
            sb.append(foundChar);
        }
        return sb.toString();

    }

    public char isFound(char src){
        for (int i = 0; i < replaceChar.length; i++) {
            if(src==replaceChar[i]){
                return '\0';
            }
        }
        return src;
    }
}

原文由 SSubra 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题