import
java.util.Arrays;
import
java.util.Collections;
import
java.util.Comparator;
import
java.util.List;
public
class
GFG {
public
static
void
main(String[] args)
{
List<Student> list = getStudentList();
Comparator<Student> comparator
= Comparator
.comparing(Student::getSchool)
.thenComparingDouble(Student::getpercentageMarks);
Collections.sort(list, comparator);
System.out.println(
"After sort"
);
list.forEach(s -> System.out.println(s));
}
public
static
List<Student> getStudentList()
{
Student s1 =
new
Student(
"Ram"
,
85.5
,
"SJV"
);
Student s2 =
new
Student(
"Shyam"
,
83.25
,
"MSH"
);
Student s3 =
new
Student(
"Mohan"
,
86.55
,
"SJV"
);
Student s4 =
new
Student(
"Sohan"
,
81.00
,
"MSH"
);
Student s5 =
new
Student(
"Rabi"
,
55.6
,
"SJV"
);
List<Student> list = Arrays.asList(s1, s2, s3, s4, s5);
return
list;
}
}
class
Student {
private
String name;
private
double
percentageMarks;
private
String school;
public
Student(String name,
double
percentageMarks,
String school)
{
this
.name = name;
this
.percentageMarks = percentageMarks;
this
.school = school;
}
public
String getName()
{
return
name;
}
public
void
setName(String name)
{
this
.name = name;
}
public
double
getpercentageMarks()
{
return
percentageMarks;
}
public
void
setpercentageMarks(
int
percentageMarks)
{
this
.percentageMarks = percentageMarks;
}
public
String getSchool()
{
return
school;
}
public
void
setSchool(String school)
{
this
.school = school;
}
@Override
public
String toString()
{
return
"Student [name="
+ name + ",
percentageMarks
= " + percentageMarks
+
", school="
+ school +
"]"
;
}
}