【问题标题】:Taking in uppercase and lower case alphabet character接受大写和小写字母字符
【发布时间】:2018-07-21 21:26:15
【问题描述】:

我试图弄清楚如何在下面的代码中接受用户输入的大小写字母。我的应用程序接受用户名的字符串,我需要能够让他们知道字符是否在其中,无论大小写如何。

boolean p=str.contains("R");
if(p)
System.out.println("string contains the char 'R'");
else
System.out.println("string does not contains the char 'R'");

【问题讨论】:

    标签: java boolean uppercase


    【解决方案1】:

    您可以通过调用toUpperCase() 来简单地转换您的输入,这将返回一个全大写字母的字符串,然后在返回的类型上应用contains

    boolean p = str                // robot
                   .toUpperCase()  // ROBOT
                   .contains("R"); // ROBOT contains R? true/false
    // note: value of str is still robot as original
    

    虽然如果您不需要多次使用p,则无需执行另一次字符检查

    if(str.toUpperCase().contains("R"))
        System.out.println("string contains the char 'R'");
    else
        System.out.println("string does not contains the char 'R'");
    

    【讨论】:

    • 这似乎可行,但我需要考虑小写和大写字母 - 所以如果用户输入 Maurice Moss 并且选择的字符是 m,它应该表明找到了该字符。我想知道是否可以在程序中使用某些东西来随机选择 a 和 z 之间的字符。可能是 Math.random() 函数?
    • @RobNelson 如果只有一个输入来自用户,无论是字符串还是字符,然后为您的值选择一个标准(上限或下限)并相应地转换用户输入,或者如果两个输入都是动态然后使用if(str.toUpperCase().contains(someStringchar.toUpperCase())),大写是一个字符串类的方法,因此可以在任何字符串对象(由“某些字符串”表示)或字符串类上调用
    • 谢谢两位,我将 str.toUpperCase() 替换为 str.toLowercase()。代码现在将同时查找大写和小写字母!感谢您的帮助。
    • 很高兴能帮上忙,编码愉快!
    • 请注意,在某些情况下仅使用toUpperCase 是不够的。这就是为什么equalsIgnoreCase() 同时做toUpperCasetoLowerCase
    猜你喜欢
    • 1970-01-01
    • 2019-01-17
    • 1970-01-01
    • 2015-07-28
    • 1970-01-01
    • 2019-08-08
    • 1970-01-01
    • 2013-02-04
    • 1970-01-01
    相关资源
    最近更新 更多