java - Java 语言中对数组列表进行排序

标签 java inputbox

我设置了一个数组列表。我也设置了输入指令,以便用户可以输入一个字符串,然后输入一个整数,然后输入一个字符串(名字、年龄和姓氏)。

我需要按姓氏对数组列表进行排序。到目前为止我输入的代码都在main方法下:-

public static void main(String[] args) {
Name Name[] = new Name[50];
int count = 0;

for (int i=0; i<50; i++)
  NewName[i] = new Name();

//ADD NEW TO ARRAYLIST NAME
String FName = JOptionPane.showInputDialog("first name");
int age = Integer.parseInt(JOptionPane.showInputDialog("age"));
String LName = JOptionPane.showInputDialog("last name");
          NewName[count] = new Name(FName, age, LName);
count = count++;
}

//ITEMS SORT BY LAST NAME
//CODE FOR SORT GOES HERE

最佳答案

看看Comparable , Comparator , Arrays.sortCollections.sort

import java.util.Arrays;


class Name implements Comparable<Name> {

    private String lastName;
    //Other fields

    public Name(String lastName){
        this.lastName = lastName;
    }

    public int compareTo(Name o) {
        //Null checks etc
        return lastName.compareTo(o.lastName);
    }
    public String getLastName(){
        return lastName;
    }
    //Getter and setter methods
}

public class Test{
    public static void main(String[] args) {
        Name[] arr = new Name[]{new Name("AAC"), new Name("AAD"), new Name("AAA"),new Name("ABC"), new Name("AADDE")};
        Arrays.sort(arr);
        for(Name nm:arr){
            System.out.println(nm.getLastName());
        }
    }
}

关于java - Java 语言中对数组列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2439299/

相关文章:

java - java HashMap 如何进行链接?如何访问所有碰撞值?

java - 仅当其他方法完成时才调用方法 - RxJava

java - 尝试使用 Selenium WebDriver for Java 从 HTML 表获取数据

javascript - 从输入框获取 img src 到 div

excel - 从快捷键运行宏时不出现输入框

excel - 使用空输入单击确定后 application.inputbox 错误

java - 无法访问内部类中的变量,但我需要更改该变量,所以我也不能将其声明为final

java - 如何使用 Java HttpServer/HttpExchange 在 GET 中获取查询字符串?

javascript - js动态创建点击功能的复选框未定义

JQuery 模拟在输入字段中输入