以下是我的代码。基本上它可以解决字符是按升序还是降序排列的问题。如果输入一个小写单词,它可以很好地工作,但是如果输入例如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();
}
}
}
答案 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
?