我如何制作类似String.toUpperCase()的函数,假设我制作了Character.isVowel()

在哪里,我只需要写'A'.isVowel()并得到一个布尔结果;就像"code".toUpperCase();
这给了我输出CODE

只有在可能的情况下;你能告诉我怎么做吗?

最佳答案

您不能通过扩展Character来完成此操作,因为它是最后一个类(您不能扩展它),但是即使可以,您也不能简单地将字符转换为子类(您必须创建一个对应的构造函数)例如)。

但是,您可以尝试以下操作:

public class Main {

    //Supports only english vowels (uperrcase, or lowercase):
    public static boolean isVowel(final int codePoint) {
        return "aeiouyAEIOUY".indexOf(codePoint) >= 0;
    }

    public static void main(final String[] args) {
        System.out.println(isVowel('A')); //true.
        System.out.println(isVowel('b')); //false.
    }
}


但同样,您必须手动定义所有语言的所有元音(大写和小写)。

我还检查了regexes in Java,但是没有找到有关Vowel类的任何信息。

08-04 04:33