我正在编写一个程序,它接受一个字符串并返回一个布尔值,表示该字是否按字母顺序排列,例如最坚持,承认,擅长等。
我的问题是该程序没有输出但只是终止...请我真的很感激一些更正。 这是我的代码:
public class test{
public static boolean Abecedarian(String s) {
String alp="";
for(char c ='A'; c<='Z'; c++){
alp +=c;
}
if(s.equals(alp)){
return true;
}else
return false;
}
public static void main(String[] args) {
Abecedarian("victor");
}
}
答案 0 :(得分:1)
试试这个:
public static void main(String[] args) {
String [] words = {"abdest", "acknow", "adempt" };
for (String word : words) {
System.out.println(" isAbecedarian '"+word+"': "+isAbecedarian(word));
}
}
public static boolean isAbecedarian(String s) {
if (s == null ) throw new IllegalArgumentException("Error");
if (s.length() < 2) return true;
char last = s.charAt(0);
char current;
for (int i = 1; i < s.length(); i++) {
current = s.charAt(i);
if (current < last) {
return false;
}
last = current;
}
return true;
}
输出:
isAbecedarian 'abdest': true
isAbecedarian 'acknow': true
isAbecedarian 'adempt': true