Advertisement
lpuarmy

Lat. 5 | ASD 01b

Sep 19th, 2013
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.28 KB | None | 0 0
  1. /******************* Mahasiswa.java **********************/
  2. package lat5;
  3. import java.util.*;
  4.  
  5. public class Mahasiswa implements Comparable {
  6.     private String nama;
  7.     private String nrp;
  8.     private Float nilai;
  9.    
  10.     public Mahasiswa(){
  11.     }
  12.     public void setNama(String nama) {
  13.         this.nama = nama;
  14.     }
  15.     public void setNrp(String nrp) {
  16.         this.nrp = nrp;
  17.     }
  18.     public void setNilai(float nilai) {
  19.         this.nilai = nilai;
  20.     }
  21.     public String getNama() {
  22.         return nama;
  23.     }
  24.     public String getNrp() {
  25.         return nrp;
  26.     }
  27.     public Float getNilai() {
  28.         return nilai.floatValue();
  29.     }
  30.     @Override
  31.     public int compareTo(Object mhsLain) throws ClassCastException {
  32.         if(!(mhsLain instanceof Mahasiswa))
  33.             throw new ClassCastException("Harus dari class Mahasiswa");
  34.         float nilaiLain = ((Mahasiswa) mhsLain).getNilai();
  35.         int out;
  36.         if(this.nilai < nilaiLain) out = -1;
  37.         else if(this.nilai > nilaiLain) out = 1;
  38.         else out = 0;
  39.         return out;
  40.     }
  41. }
  42.  
  43. /******************* mainMahasiswa.java **********************/
  44. package lat5;
  45. import java.util.*;
  46.  
  47. public class mainMahasiswa {
  48.     public static void main(String[] args) {
  49.         String nama[] = {"Eko","Firman","Ida","Aji","Febri","Agus","Budi","Ajeng","Ilham","Anton"};
  50.         Mahasiswa[] mhs = new Mahasiswa[10];
  51.         float min = 60.0f;
  52.         float max = 100.0f;
  53.  
  54.         for(int i=0; i<10; i++){
  55.             Random rand = new Random();
  56.             float nilai = rand.nextFloat() * (max - min) + min;
  57.             mhs[i] = new Mahasiswa();
  58.             mhs[i].setNama(nama[i]);
  59.             mhs[i].setNrp("" + (30 + i));
  60.             mhs[i].setNilai(nilai);
  61.         }
  62.        
  63.         System.out.println("Data awal");
  64.         for(int i=0; i<10; i++){
  65.             Mahasiswa data = mhs[i];
  66.             System.out.println(data.getNrp() + " - " + data.getNama() + " : " + data.getNilai());
  67.         }
  68.         Arrays.sort(mhs);
  69.        
  70.         System.out.println("\nSetelah diurutkan berdasarkan nilai");
  71.         for(int i=0; i<10; i++){
  72.             Mahasiswa data = mhs[i];
  73.             System.out.println(data.getNrp() + " - " + data.getNama() + " : " + data.getNilai());
  74.         }
  75.     }
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement