import java.util.*;
public class CustomObject {
private String customProperty;
public CustomObject(String property) {
this.customProperty = property;
}
public String getCustomProperty() {
return this.customProperty;
}
public static void main(String[] args) {
ArrayList<Customobject> list = new ArrayList<>();
list.add(new CustomObject("Z"));
list.add(new CustomObject("A"));
list.add(new CustomObject("B"));
list.add(new CustomObject("X"));
list.add(new CustomObject("Aa"));
list.sort((o1, o2) -> o1.getCustomProperty().compareTo(o2.getCustomProperty()));
for (CustomObject obj : list) {
System.out.println(obj.getCustomProperty());
}
}
}
When you run the program, the output will be:
A Aa B X Z
In the above program, we've defined a CustomObject
class with a String
property, customProperty.
We've also added a constructor that initializes the property, and a getter function getCustomProperty()
which returns customProperty.
In the main()
method, we've created an array list of custom objects list, initialized with 5 objects.
For sorting the list with the given property, we use list's sort()
method. The sort()
method takes the list to be sorted (final sorted list is also the same) and a comparator
.
In our case, the comparator is a lambda which
compareTo()
method,Based on this, list is sorted based on least property to greatest and stored back to list.
It takes a lot of effort and cost to maintain Programiz. We would be grateful if you support us by either:
Disabling AdBlock on Programiz. We do not use intrusive ads.
or
Donate on Paypal