有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java数组使用嵌套for循环从用户输入中删除元音

所以我已经看过这个简单的问题和答案好几次了,我只是想尝试一种不同的方法来解决它。 我的解决方案确实有效——它用一个空字符替换每个元音。 然而,我一直在试图在我的代码中找到一种方法,可以简单地删除字符,而不是将其替换为空字符'

例如。。。 在我的代码中,如果用户输入:happy,结果是h ppy

虽然这确实回答了这个问题,但我也希望看到输出:hppy

希望我能得到一些帮助,谢谢

import java.util.Scanner;

public class Main {
    public static void main(String args[]){

        char [] vowels = {'a','e','i','o','u',
                            'A','E','I','O','U'};//char array


        Scanner in = new Scanner(System.in);
        System.out.println("Enter phrase: ");
        String phrase = in.nextLine();


        for (int i = 0; i < phrase.length(); i++) {
            for (int j = 0; j < vowels.length; j++) {
                char ch = vowels[j];
                char ch2 = phrase.charAt(i);
                if (ch == ch2) {
                    phrase = phrase.replace(phrase.charAt(i), ' ');


                }

            }

        }
         System.out.println(phrase);

共 (1) 个答案

  1. # 1 楼答案

    这应该行得通:phrase.replaceAll("[aeiouAEIOU]", "")