Java 字母数字顺序问题中字符串的比较 //getFirstName方法 公共字符串getFirstName() { String firstName=name.substring(0,name.lastIndexOf(“”)); 返回名字; } //getLastName方法 公共字符串getLastName() { 字符串lastName=name.substring(name.lastIndexOf(“”+1); 返回姓氏; } //alphaName方法::返回用户全名的字符串 //按字母数字顺序;返回第一个和最后一个命名为switched的字符串, //仅在必要时;实例变量名保持不变 //使用字符串类compareTo()方法 公共字符串alphaName() { 字符串compare=firstName.compareTo(lastName); 如果(比较0){ 返回getLastName()+getFirstName(); } 否则{ 返回getLastName()+getFirstName(); } 返回比较; }

Java 字母数字顺序问题中字符串的比较 //getFirstName方法 公共字符串getFirstName() { String firstName=name.substring(0,name.lastIndexOf(“”)); 返回名字; } //getLastName方法 公共字符串getLastName() { 字符串lastName=name.substring(name.lastIndexOf(“”+1); 返回姓氏; } //alphaName方法::返回用户全名的字符串 //按字母数字顺序;返回第一个和最后一个命名为switched的字符串, //仅在必要时;实例变量名保持不变 //使用字符串类compareTo()方法 公共字符串alphaName() { 字符串compare=firstName.compareTo(lastName); 如果(比较0){ 返回getLastName()+getFirstName(); } 否则{ 返回getLastName()+getFirstName(); } 返回比较; },java,compareto,Java,Compareto,您好,我不知道如何使我的代码在字母数字顺序。我现在有这个,它输出不正确。我没有添加整个程序,但这应该足够了。我使用了compare-to,获取了getFirstName和getLastName方法,但输出不正确。请帮忙,谢谢 compareTo应该返回一个int,而不是字符串-您正在尝试将其存储为字符串而不是int。将其更改为“int compare”,它应该可以工作。尝试此操作- public String alphaName(String firstName, String lastName

您好,我不知道如何使我的代码在字母数字顺序。我现在有这个,它输出不正确。我没有添加整个程序,但这应该足够了。我使用了compare-to,获取了getFirstName和getLastName方法,但输出不正确。请帮忙,谢谢

compareTo应该返回一个int,而不是字符串-您正在尝试将其存储为字符串而不是int。将其更改为“int compare”,它应该可以工作。

尝试此操作-

public String alphaName(String firstName, String lastName)
{
    int compare = firstName.compareTo(lastName);
    if(compare < 0){
        return firstName + " " + lastName;
    }
    else if(compare > 0){
        return lastName + " " + firstName;
    }
    else{
        return lastName + " " + firstName;
    }
}
public String alphaName(String firstName,String lastName)
{
int compare=firstName.compareTo(lastName);
如果(比较<0){
返回firstName+“”+lastName;
}
否则如果(比较>0){
返回lastName+“”+firstName;
}
否则{
返回lastName+“”+firstName;
}
}

输出不正确,那么问题出在哪里?请编辑您的问题以包含较长的示例数组(您的示例太短)以及排序后想要得到的结果。如果与
else
相同,则
else if的意义是什么?@shmosel the else if表示大于0,else是用于if compare equals的0@amin29但他们也在做同样的事情。请给出否决投票的理由。此解决方案适用于java 8这是正确的答案@JohnathanMinucco如果它对您有帮助,您可以这样标记它吗?