Home  >  Article  >  Java  >  How to Sort an Array of Objects in Java by Name Using the toString Method?

How to Sort an Array of Objects in Java by Name Using the toString Method?

DDD
DDDOriginal
2024-11-17 07:42:03156browse

How to Sort an Array of Objects in Java by Name Using the toString Method?

Sorting an Array of Objects in Java

In Java, sorting an array of objects can be a challenge when the objects do not contain strings but rather reference variables that provide information through a toString method. This method retrieves the name, id, author, and publisher data.

Extracting the Name for Sorting

To sort by the name, we need to extract it from the toString method's output. Here's how:

String[] values = toString().split("\n");
String name = values[0];

Sorting the Array

Once we have the names extracted, we can sort the array of objects using the Collections.sort method:

List<Book> books = new ArrayList<Book>();

Collections.sort(books, new Comparator<Book>() {

    public int compare(Book o1, Book o2) {
        return o1.name.compareTo(o2.name);
    }
});

This comparator defines the compare method to sort based on the extracted name. The sort method ensures that the array is sorted in ascending order of the names.

The above is the detailed content of How to Sort an Array of Objects in Java by Name Using the toString Method?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn