Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /******************* Mahasiswa.java **********************/
- package lat5;
- import java.util.*;
- public class Mahasiswa implements Comparable {
- private String nama;
- private String nrp;
- private Float nilai;
- public Mahasiswa(){
- }
- public void setNama(String nama) {
- this.nama = nama;
- }
- public void setNrp(String nrp) {
- this.nrp = nrp;
- }
- public void setNilai(float nilai) {
- this.nilai = nilai;
- }
- public String getNama() {
- return nama;
- }
- public String getNrp() {
- return nrp;
- }
- public Float getNilai() {
- return nilai.floatValue();
- }
- @Override
- public int compareTo(Object mhsLain) throws ClassCastException {
- if(!(mhsLain instanceof Mahasiswa))
- throw new ClassCastException("Harus dari class Mahasiswa");
- float nilaiLain = ((Mahasiswa) mhsLain).getNilai();
- int out;
- if(this.nilai < nilaiLain) out = -1;
- else if(this.nilai > nilaiLain) out = 1;
- else out = 0;
- return out;
- }
- }
- /******************* mainMahasiswa.java **********************/
- package lat5;
- import java.util.*;
- public class mainMahasiswa {
- public static void main(String[] args) {
- String nama[] = {"Eko","Firman","Ida","Aji","Febri","Agus","Budi","Ajeng","Ilham","Anton"};
- Mahasiswa[] mhs = new Mahasiswa[10];
- float min = 60.0f;
- float max = 100.0f;
- for(int i=0; i<10; i++){
- Random rand = new Random();
- float nilai = rand.nextFloat() * (max - min) + min;
- mhs[i] = new Mahasiswa();
- mhs[i].setNama(nama[i]);
- mhs[i].setNrp("" + (30 + i));
- mhs[i].setNilai(nilai);
- }
- System.out.println("Data awal");
- for(int i=0; i<10; i++){
- Mahasiswa data = mhs[i];
- System.out.println(data.getNrp() + " - " + data.getNama() + " : " + data.getNilai());
- }
- Arrays.sort(mhs);
- System.out.println("\nSetelah diurutkan berdasarkan nilai");
- for(int i=0; i<10; i++){
- Mahasiswa data = mhs[i];
- System.out.println(data.getNrp() + " - " + data.getNama() + " : " + data.getNilai());
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement