Java 字符串比较到,字母顺序

Java 字符串比较到,字母顺序,java,Java,我试着取两个单词并返回字母表中第一个单词(如果单词以大写字母开头,也应该忽略) 到目前为止我的代码(编辑): 公共字符串whatComesFirst(字符串名称1,字符串名称2){ 如果(名称1.比较信号案例(名称2)0){ return Name2+“在字母表中位于“+Name1+”之前; } 返回名称1; } 但是,它不会按字母顺序给出单词 编辑: 我想我现在明白了。 这看起来是否正确: public String whatComesFirst(String Name1, String N

我试着取两个单词并返回字母表中第一个单词(如果单词以大写字母开头,也应该忽略)

到目前为止我的代码(编辑):

公共字符串whatComesFirst(字符串名称1,字符串名称2){
如果(名称1.比较信号案例(名称2)<0){
在字母表中,return Name1+“位于“+Name2+”之前;
}
如果(名称1.compareToIgnoreCase(名称2)>0){
return Name2+“在字母表中位于“+Name1+”之前;
}
返回名称1;
}
但是,它不会按字母顺序给出单词

编辑:

我想我现在明白了。 这看起来是否正确:

public String whatComesFirst(String Name1, String Name2) {

if(Name1.compareToIgnoreCase(Name2) < 0) {
    return Name1 + " comes before " + Name2 + " in the alphabet";
}
if (Name1.compareToIgnoreCase(Name2) > 0) {
    return Name2 + " comes before " + Name1 + " in the alphabet";
}
if (Name1.compareToIgnoreCase(Name2) == 0) {
    return Name1 + " is the same as " + Name2;
}
return Name1;
公共字符串whatComesFirst(字符串名称1,字符串名称2){
如果(名称1.比较信号案例(名称2)<0){
在字母表中,return Name1+“位于“+Name2+”之前;
}
如果(名称1.compareToIgnoreCase(名称2)>0){
return Name2+“在字母表中位于“+Name1+”之前;
}
如果(名称1.compareToIgnoreCase(名称2)==0){
返回名称1+”与“+Name2”相同;
}
返回名称1;
试试看

public String whatComesFirst(String name1, String name2) {
    if (name1.equalsIgnoreCase(name2))
        return name1 + " is the same as " + name2;
    if (name1.compareToIgnoreCase(name2) < 0) {
        return name1 + " comes before " + name2 + " in the alphabet";
    }
    return name2 + " comes before " + name1 + " in the alphabet";
}
公共字符串whatComesFirst(字符串名称1,字符串名称2){
if(名称1.相等信号案例(名称2))
返回名称1+”与“+name2”相同;
如果(名称1.比较信号案例(名称2)<0){
在字母表中,return name1+“位于“+name2+”之前;
}
return name2+“在字母表中位于“+name1+”之前;
}

关于

它应该在您(第一次)编辑后工作。您如何调用它?编辑后:您的上一次返回应该是针对Name1和Name2具有相同值的情况。因此,如果(Name1.compareTignoreCase(Name2)==0){return Name1+”与“+Name2;”相同,您可能应该打印一个句子,说没有用。您只能写入return Name1+”与“+Name2”相同;还有一个注意事项:尝试遵守Java编码约定,并使用小写字母作为变量(在您的示例中,Name1和Name2应该是Name1和Name2)
public String whatComesFirst(String name1, String name2) {
    if (name1.equalsIgnoreCase(name2))
        return name1 + " is the same as " + name2;
    if (name1.compareToIgnoreCase(name2) < 0) {
        return name1 + " comes before " + name2 + " in the alphabet";
    }
    return name2 + " comes before " + name1 + " in the alphabet";
}