使用大写和小写字符java的混合转换字符串

时间:2011-12-07 18:10:54

标签: java

以下是我的代码。基本上它可以解决字符是按升序还是降序排列的问题。如果输入一个小写单词,它可以很好地工作,但是如果输入例如aB,则表示字母不在orde中,当它们显然是!!!不太确定,我开始对此感到绝望!

    text.toLowerCase();

    while ( ! text.equals( "END" ) ) 

    {       

        String string = (text);
        char[] content = string.toCharArray();
        java.util.Arrays.sort(content);
        String sorted = new String(content);          


            if (text.equals(sorted))
            {
                System.out.print(text);
                System.out.print("     letters in ascending order");
                System.out.println();

            }

            else           
            {
                System.out.print((text));
                System.out.print("    letters not in ascending order");
                System.out.println();
            }

            System.out.println();
            System.out.print( "#Enter input text : " );
            text = BIO.getString();
        }
    }
}

2 个答案:

答案 0 :(得分:3)

您需要将值保存回text(并检查自转换后的小写"end"。)

text = text.toLowerCase();
while (!text.equals("end")) { // ...

toLowerCase不会修改原始字符串,而是返回较低版本的字符串。

或者,如果您想将"END"保留为结束:

lowered = text.toLowerCase();
while (!text.equals("END")) { 
    // ... etc ...
    text = BIO.getString();
    lowered = text.toLowerCase();
}

答案 1 :(得分:0)

为什么不使用text.compareToIgnoreCase(sorted) == 0

相关问题