In this example we will make use of Landba expression to sort students by name using Comparator
Student.javapackage com.company;
public class Student {
public Student(int studentId, String studentName) {
this.studentId = studentId;
this.studentName = studentName;
}
private int studentId;
private String studentName;
private int studentAge;
private boolean studentGender;
public int getStudentId() {
return studentId;
}
public void setStudentId(int studentId) {
this.studentId = studentId;
}
public String getStudentName() {
return studentName;
}
public void setStudentName(String studentName) {
this.studentName = studentName;
}
public int getStudentAge() {
return studentAge;
}
public void setStudentAge(int studentAge) {
this.studentAge = studentAge;
}
public boolean isStudentGender() {
return studentGender;
}
public void setStudentGender(boolean studentGender) {
this.studentGender = studentGender;
}
@Override
public String toString() {
return "Student{" +
"studentId=" + studentId +
", studentName='" + studentName + '\'' +
'}';
}
}
Main.java
package com.company;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Student> students = new ArrayList<>();
students.add(new Student(1, "Sam"));
students.add(new Student(2, "Mike"));
students.add(new Student(3, "Alex"));
students.add(new Student(3, "Richard"));
students.add(new Student(3, "Andrew"));
students.add(new Student(3, "Andy"));
Comparator<Student> sortByName = (Student s1, Student s2)
-> s1.getStudentName().compareTo(s2.getStudentName());
System.out.println("Before Sort: "+ students);
students.sort(sortByName);
System.out.println("After Sort: "+ students);
}
}
Output:
Before Sort: [Student{studentId=1, studentName='Sam'}, Student{studentId=2, studentName='Mike'}, Student{studentId=3, studentName='Alex'}, Student{studentId=3, studentName='Richard'}, Student{studentId=3, studentName='Andrew'}, Student{studentId=3, studentName='Andy'}]
After Sort: [Student{studentId=3, studentName='Alex'}, Student{studentId=3, studentName='Andrew'}, Student{studentId=3, studentName='Andy'}, Student{studentId=2, studentName='Mike'}, Student{studentId=3, studentName='Richard'}, Student{studentId=1, studentName='Sam'}]
- Add two numbers using Java Generics
- Convert Java List to Json String using Jackson
- Convert Java Object to JSON using Jackson Library
- Java SE JDBC: Insert with PreparedStatement Example
- [Program] How to read three different values using Scanner in Java
- Java JDBC Batch Update Example with PreparedStatement
- Java Stream flatmap() Examples
- Save Java Object as JSON file using Jackson Library
- Java get day of the week as an int using DayOfWeek
- Create Nested Directories using Java Code
- Java JDBC Delete a Record in Database Table using PreparedStatement
- List of jars required for Struts2 project
- Convert Java Object to XML using Jackson Library
- Struts2 : java.lang.ClassNotFoundException: org.apache.commons.fileupload.RequestContext
- Java JDBC Get Id of the Inserted Record with AutoIncrement
- How to list all tables using Java JDBC
- Java Jackson ObjectMapper Class with Examples
- Fix: Maven - Failed to execute goal - Compilation failure - Source/Target option 5 is no longer supported. Use 7 or later
- Eclipse : The type java.lang.CharSequence cannot be resolved. Indirectly referenced from required .class files
- Formatting Double in Java [Examples]
- How to run Java Unit Test cases with Apache Maven?
- [fix] NullPointerException Cannot Invoke findById because Repository is null - Java Spring
- [Fix] java: integer number too large compilation error
- [Java] Read a File with UTF-8 Encoding
- How to detect Operating System using Java code
- Get-ADUser PowerShell - Get AD user details using email address - SharePoint
- How to turn off autocomplete in input fields in HTML Form - Html
- Java JDBC NumberFormatException: For input string - Java
- Android Emulator Soft Back button action using Computer keyboard - Android
- How to create alias in macOS - MacOS
- Android RatingBar Example - Android
- Change SharePoint search results FullTextSqlQuery RowLimit 10000 - SharePoint
- Turn Off Auto-Brightness on iPhone running iOS 16 - iOS