Code in JAVA Displays students by GPA increasing order each
Code in JAVA:
Displays students by GPA increasing order, each field (ID,firstName,lastName) is displayed in a separate column with width 10.
Solution
Java Code:
import java.io.*;
import java.util.Scanner;
public class StudentDetails{
private String firstName;
private String lastName;
private int id;
private double gpa;
public StudentDetails(int id,String firstName,String lastName, double gpa){
this.setFirstName(firstName);
this.setLastName(lastName);
this.setId(id);
this.setGpa(gpa);
return;
}
public void setFirstName(String firstName){
this.firstName = firstName;
}
public void setLastName(String lastName){
this.lastName = lastName;
}
public void setId(int id){
this.id = id;
}
public void setGpa(double gpa){
this.gpa = gpa;
}
public String getFirstName(){
return firstName;
}
public String getLastName(){
return lastName;
}
public int getId(){
return id;
}
public double getGpa(){
return gpa;
}
public static void main(String []args){
Scanner s = new Scanner(System.in);
System.out.print(\"Enter Number of Records :\");
int n = s.nextInt();
StudentDetails[] sd = new StudentDetails[n];
for(int i=0 ; i<n ; i++){
System.out.println(\"Enter the ID , FirstName , LastName , GPA\");
sd[i] = new StudentDetails(s.nextInt(),s.next(),s.next(),s.nextDouble());
}
for(int i=0 ;i<n;i++){
for(int j=i+1;j<n;j++){
if(sd[i].getGpa() > sd[j].getGpa()){
double temp = sd[i].getGpa();
sd[i].setGpa(sd[j].getGpa());
sd[j].setGpa(temp);
}
}
}
System.out.println(\"Student Records are Sorted by GPA : \");
for(int i=0 ; i<n ; i++){
System.out.println(sd[i].getId()+\"\\t \" +sd[i].getFirstName() + \"\\t \"+ sd[i].getLastName() + \"\\t \" + sd[i].getGpa());
}
}
}
NOTE : student records are sorted directly by instances of OBJECT (StudentDetails).

