Program Java Collection dan Sistem Lelang

 Hai Programmer....."Ilmu akan menghidupkan jiwa."

Kali ini saya akan menjelaskan mengenai Collection dan membuat suatu program java mengenai sistem lelang. Collection adalah suatu objek yang bisa digunakan untuk menyimpan sekumpulan objek. Classclass Collection diletakkan dalam package java.util dan mempunyai dua interface utama yaitu Collection dan MapCollection terbagi menjadi 3 kelompok yaitu Set, List dan Map.



  1. Set

          Koleksi yang tidak boleh ada duplikasi nilai, dengan kata lain semua value dari class collection yang                 mengimplementasikan interface Set  tidak boleh ada duplikasi nilai di dalamnya.  Urutan maupun               letak dari anggota tidaklah penting, hanya keberadaan anggota saja yang penting.

      2. List
          List digunakan untuk menyimpan sekumpulan objek berdasarkan urutan masuk (ordered) dan           menerima duplikat.  
      3. Map
          Adalah untuk menyimpan objek pada Map, perlu sepasang objek, yaitu key yang bersifat unik           dan nilai yang disimpan

Java Collection memiliki berbagai macam interfaces yaitu Set, List, Queue, Deque dan untuk classnya ada ArrayList, LinkedList, HashSet, LinkedHashSet, dan masih banyak lagi.Berikut adalah contoh nya:

ArrayList

/**

 * @author (Ricky Supriyanto)

 */


import java.util.*;


public class ArrayListContoh

{

    public static void main(String[] args){

        //TODO Auto-generated method stub

        //membuat arrayList

        ArrayList <String> al= new ArrayList <String> ();

        //menambah objek ke arrayList

        al.add("Ahmad");

        al.add("Budi");

        al.add("Ahmad");

        al.add("Dora");

        //menampilkan isi arrayList

        Iterator itr=al.iterator();

        while(itr.hasNext()){

            System.out.println(itr.next());

        }

    }

}


ArrayListFor

/**

 * @author (Ricky Supriyanto)

 */


import java.util.ArrayList;

public class ArrayListFor

{

    public static void main(String[] args){

        //TODO Auto-generated method stub

        //membuat ArrayList

        ArrayList <String> al = new ArrayList<String>();

        //menambahkan objek ke arraylist

        al.add("Ahmad");

        al.add("Budi");

        al.add("Cecep");

        al.add("Dora");

        //menampilkan isi arraylist

        for(String obj:al){

            System.out.println(obj);

        }

    }

}


ArrayListClass

/**

 * @author (Ricky Supriyanto)

 */

import java.util.*; 

public class ArrayListClass 

    public static void main(String[] args) 

    { 

        //Data 

        Mahasiswa mhs1 = new Mahasiswa ("K121","Adam Kamil",67,69,91); 

        Mahasiswa mhs2 = new Mahasiswa ("K122","Budi Ridho",57,89,93); 

        Mahasiswa mhs3 = new Mahasiswa ("K123","Cecep Mansyur",77,79,80); 

        Mahasiswa mhs4 = new Mahasiswa ("K124","Dadang Habibie",67,79,60); 

        Mahasiswa mhs5 = new Mahasiswa ("K125","Evi Julita",89,79,95); 

        //membuat arraylist 

        ArrayList<Mahasiswa> al=new ArrayList<Mahasiswa>(); 

        //menambahkan objek ke arraylist 

        al.add(mhs1); 

        al.add(mhs2); 

        al.add(mhs3); 

        al.add(mhs4); 

        al.add(mhs5); 

        //menampilkan isi arrayList 

        Iterator itr=al.iterator(); 

        while(itr.hasNext()) { 

            Mahasiswa tampungMhs = (Mahasiswa)itr.next(); 

            System.out.print(tampungMhs.getNim()+" "); 

            System.out.print(tampungMhs.getNama()+" "); 

            System.out.print(tampungMhs.getTugas()+" "); 

            System.out.print(tampungMhs.getUts()+" "); 

            System.out.println(tampungMhs.getUas()+" "); 

        } 

    } 

ArrayListClass tersbut memerlukan suatu class mahasiswa

/**

 * @author (Ricky Supriyanto)

 */

public class Mahasiswa 

{

    private String NRP, Nama;

    private int Tugas, ETS, EAS;


    public Mahasiswa (String nrp, String nama, int tugas, int ets, int eas)

    {

        NRP = nrp;

        Nama = nama;

        Tugas = tugas;

        ETS = ets;

        EAS = eas;

    }

    public String getNim()

    {

        return NRP;

    }

    public String getNama()

    {

        return Nama;

    }

    public int getTugas()

    {

        return Tugas;

    }

    public int getUts()

    {

        return ETS;

    }

    public int getUas()

    {

        return EAS;

    }

}

ArrayListGabung

/**

 * @author (Ricky Supriyanto)

 */

import java.util.ArrayList;

import java.util.Iterator;

public class ArrayListGabung

{

   public static void main(String [] args){

       //TODO Auto-generated method stub

       //Membuat arraylist

       ArrayList<String> al =  new ArrayList<String>();

       //menambahkan objek ke arraylist

       al.add("Ahmad");

       al.add("Budi");

       al.add("Cecep");

       al.add("Dora");

       

       ArrayList <String> al2 = new ArrayList <String>();

       al2.add("Endo");

       al2.add("Fany");

       

       al.addAll(al2);

       

       //menampilkan isi arraylist

       Iterator itr = al.iterator();

       while(itr.hasNext()){

           System.out.println(itr.next());

        }

    }

}

ArrayListRemoveAll

/**

 * @author (Ricky Supriyanto)

 */

import java.util.ArrayList;

import java.util.Iterator;

public class ArrayListRemoveAll

{

    public static void main(String[] args){

        //TDODO auto-generated method stub

        //membuat array list

        ArrayList <String> al = new ArrayList<String>();

        

        //menambahkan objek ke arraylist

        al.add("Ahmad");

        al.add("Budi");

        al.add("Cecep");

        al.add("Dora");

        

        ArrayList<String> al2 = new ArrayList<String>();

        al.add("Endo");

        al.add("Dora");

        

        al.removeAll (al2);

        

        //menampilkan isi arraylist

        Iterator itr = al.iterator();

        while(itr.hasNext()){

            System.out.println(itr.next());

        }

    }

}

ArrayListRetailAll

/**

 * @author (Ricky Supriyanto)

 */

import java.util.ArrayList;

import java.util.Iterator;
public class ArrayListRetain
{
   public static void main(String[] args){
       //TODO auto-generated
       //membuat arraylist
       ArrayList<String> al = new ArrayList<String>();
       //menambahkan objek ke array list
       al.add("Ahmad");
       al.add("Budi");
       al.add("Cecep");
       al.add("Dora");
       
       ArrayList<String> al2 = new ArrayList<String>();
       al2.add("Endo");
       al2.add("Dora");
       
       al.retainAll(al2);
       
       //menampilkan isi arraylist
       Iterator itr = al.iterator();
       while(itr.hasNext()){
           System.out.println(itr.next());
        }
    }
}

LinkedList

/**

 * @author (Ricky Supriyanto)

 */

import java.util.*;

public class LinkedListContoh

{

    public static void main (String args[]){

        

        LinkedList<String> al = new LinkedList<String>();

        al.add ("Zaza");

        al.add ("Yadi");

        al.add ("Mutiara");

        al.add ("Santoso");

        

        Iterator <String> itr = al.iterator();

        while(itr.hasNext()){

            System.out.println(itr.next());

        }

    }

}

HashSet

/**

 * @author (Ricky Supriyanto)

 */

import java.util.*;

public class HashSetContoh

{

    public static void main(String args[]){

        HashSet <String> al = new HashSet <String>();

        al.add ("Anto");

        al.add ("Budi");

        al.add ("Cecep");

        al.add ("Dani");

        al.add ("Eka");

        

        Iterator <String> itr = al.iterator ();

        while(itr.hasNext()){

            System.out.println(itr.next());

        }

    }

}

LinkedHashSet

/**

 * @author (Ricky Supriyanto)

 */

import java.util.*;

public class LinkedHashSetContoh

{

    public static void main (String args[]){

        LinkedHashSet <String> al= new LinkedHashSet <String>();

        al.add ("Anto");

        al.add ("budi");

        al.add ("Cecep");

        al.add ("Dani");

        al.add ("Eka");

        

        Iterator <String> itr = al.iterator ();

        while(itr.hasNext()){

            System.out.println(itr.next());

        }

    }

}

HashMap

/**

 * @author (Ricky Supriyanto)

 */

import java.util.*;

public class HashMapContoh

{

    public static void main(String args []){

        HashMap <Integer,String> hm = new HashMap<Integer,String>();

        

        hm.put(100,"Kano");

        hm.put(101,"Laila");

        hm.put(102,"Badu");

        hm.put(null,"Johan");

        

        for(Map.Entry m:hm.entrySet()){

            System.out.println(m.getKey()+" "+m.getValue());

            

        }

    }

}

HashTable

/**

 * @author (Ricky Supriyanto)

 */

import java.util.*;
public class HashTableContoh
{
    public static void main(String args[]){
        
        Hashtable<Integer,String> hm=new Hashtable <Integer,String>();
        
        hm.put(100,"Andri");
        hm.put(102,"Roni");
        hm.put(101,"Fahrul");
        hm.put(100,"Badu");
        
        for(Map.Entry m:hm.entrySet()){
            System.out.println(m.getKey()+" "+m.getValue());
        }
    }
}


Adapula contoh Program Java Sistem Lelang yang terbagi menjadi 5 class yaitu auction,auctiontest,bid,person dan Lot.

Auction

/**

 * @author (Ricky Supriyanto)

 */
import java.util.ArrayList;    
 public class Auction  
 {  
   //Daftar Lot dalam lelang ini  
   private ArrayList<Lot> lots;  
   //Nomor yang akan diberikan ke lot berikutnya yang dimasukkan  
   private int nextLotNumber;  
   /**  
    * Buat lelang baru  
    */  
   public Auction()  
   {  
     lots = new ArrayList<Lot>();  
     nextLotNumber = 1;  
   }  
   /**  
    * Masukkan lot baru ke dalam lelang
    * @param description Deskripsi lot
    */    
   public void enterLot(String description)  
   {  
     lots.add(new Lot(nextLotNumber, description));  
     nextLotNumber++;  
   }  
   /**  
    * Tunjukkan daftar lengkap lot dalam lelang ini
    */  
   public void showLots()  
   {  
     for(Lot lot : lots)  
     {  
       System.out.println(lot.toString());  
     }  
   }  
   /**  
    * Buat tawaran yang banyak
    * Sebuah pesan dicetak menunjukkan apakah tawaran tersebut
    * penerus atau tidak
    * @param lotNumber Lot yang ditawar.
    * @param penawar Orang yang menawar lot.
    * @ nilai parameter Nilai tawaran.  
    */  
   public void makeABid(int lotNumber, Person bidder, long value)  
   {  
     Lot selectedLot = getLot(lotNumber);  
     if (selectedLot != null)  
     {  
       boolean succesful = selectedLot.bidFor(new Bid(bidder, value));  
       if (succesful)  
       {  
         System.out.println("The bid for lot number " + lotNumber + " was succesful.");  
       }  
       else  
       {  
         //Report which bid is higher  
         Bid highestBid = selectedLot.getHighestBid();  
         System.out.println("Lot number: " + lotNumber + " already has a bid of: " + highestBid.getValue());  
       }  
     }  
   }  
   / **
    * Kembalikan lot dengan nomor yang diberikan. Kembalikan nol
    * jika banyak dengan nomor ini tidak ada.
    * @param lotNumber Jumlah lot yang akan dikembalikan.
    * /  
   public Lot getLot(int lotNumber)  
   {  
     if((lotNumber >= 1) && (lotNumber < nextLotNumber))  
     {  
       //Jumlahnya tampaknya masuk akal  
       Lot selectedLot = lots.get(lotNumber-1);  
       //Sertakan uji kepercayaan diri untuk memastikan kami memiliki lot yang tepat 
       if (selectedLot.getNumber() != lotNumber)  
       {  
         System.out.println("Internal error: Lot number " + selectedLot.getNumber() + " was returned instead of " + lotNumber);  
         selectedLot = null;  
       }  
       return selectedLot;  
     }  
     else  
     {  
       System.out.println("Lot number: " + lotNumber + " does not exist.");  
       return null;  
     }  
   }  
   /**  
    * Tutup lelang. Cetak status akhir setiap lot  
    */  
   public void close()  
   {  
     System.out.println("Closing auction.");  
     for (Lot lot : lots)  
     {  
       System.out.println(lot.getNumber() + ": " + lot.getDescription());  
       if (lot.getHighestBid() == null)  
       {  
         System.out.println (" (No bids) ");  
       }  
       else  
       {  
         Bid highestBid = lot.getHighestBid();  
         System.out.println(" sold to " + highestBid.getBidder().getName() + " for " + highestBid.getValue());  
       }  
     }  
   }  
 }


Bid

/**

 * @author (Ricky Supriyanto)

 */
public class Bid  
 {  
   // Orang yang menawar 
   private final Person bidder;  
   // Nilai tawaran. Ini bisa jadi jumlah yang besar
   // tipe panjang telah digunakan  
   private final long value;  
   / **
    * Buat tawaran
    * @param penawar Siapa yang menawar untuk lot
    * @ nilai parameter Nilai tawaran
    * / 
   public Bid(Person bidder, long value)  
   {  
     this.bidder = bidder;  
     this.value = value;  
   }  
   /**  
    * @return The bidder.  
    */  
   public Person getBidder()  
   {  
     return bidder;  
   }  
   /**  
    * @return The value of the bid.  
    */  
   public long getValue()  
   {  
     return value;  
   }  
 }

Person

/**

 * @author (Ricky Supriyanto)

 */
public class Person  
 {  
   // Nama orang ini. 
   private final String name;  
   
   public Person (String name)  
   {  
     this.name = name;  
   }  
   /**  
    * @return The person's name.  
    */  
   public String getName()  
   {  
     return name;  
   }  
 }

Lot

/**

 * @author (Ricky Supriyanto)

 */
public class Lot  
 {  
   // Nomor pengenal unik.  
   private final int number;  
   // Penjelasan tentang lot 
   private String description;  
   // Tawaran tertinggi saat ini untuk lot ini.  
   private Bid highestBid;  
   / **
    * Bangun Lot, atur nomor dan deskripsinya.
    * @param number Jumlah lot.
    * @param description Deskripsi lot ini.
    * /  
   public Lot (int number, String description)  
   {  
     this.number = number;  
     this.description = description;  
     this.highestBid = null;  
   }  
   / **
    * Mencoba menawar lot ini.
    * Tawaran yang berhasil harus memiliki nilai yang lebih tinggi daripada tawaran yang ada.
    * Tawaran @param Tawaran baru
    * @kembalikan true jika berhasil. false jika tidak
    * / 
   public boolean bidFor(Bid bid)  
   {  
     if (highestBid==null)  
     {  
       // Tidak ada tawaran sebelumnya 
       highestBid=bid;  
       return true;  
     }  
     else if (bid.getValue() > highestBid.getValue())  
     {  
       // Tawaran lebih baik dari yang sebelumnya.  
       highestBid = bid;  
       return true;  
     }  
     else  
     {  
       // Biidnya tidak lebih baik  
       return false;  
     }  
   }  
  / **
    * @return Representasi string dari detail lot ini.
    * /
   public String toString()  
   {  
     String details = number + ": " + description;  
     if (highestBid != null)  
     {  
       details += " Bid: " + highestBid.getValue();  
     }  
     else  
     {  
       details += " (No bid))";  
     }  
     return details;  
   }  
   / **
    * @return Nomor lot.
    * / 
   public int getNumber()  
   {  
     return number;  
   }  
   / **
    * @return Deskripsi lot.
    * / 
   public String getDescription()  
   {  
     return description;  
   }  
  / **
    * @return Tawaran tertinggi untuk lot ini.
    * Ini bisa menjadi nol jika tidak ada tawaran saat ini.
    * /  
   public Bid getHighestBid()  
   {  
     return highestBid;  
   }  
 } 

AuctionTest

 /**

 * @author (Ricky Supriyanto)

 */
 import static org.junit.Assert.*;  
 import org.junit.After;  
 import org.junit.Before;  
 import org.junit.Test;  
 
 public class AuctionTest  
 {  
   private Auction auction1;  
   / **
    * Konstruktor default untuk kelas uji AuctionTest
    * / 
   public AuctionTest()  
   {  
   }  
   / **
    * Menyiapkan perlengkapan uji.
    *
    * Dipanggil sebelum setiap metode kasus uji.
    * /
   @Before  
   public void setUp()  
   {  
     auction1 = new Auction();  
   }  
   /**  
    * Tears down the test fixture  
    *  
    * Called after every test case method.  
    */  
   @After  
   public void tearDown()  
   {  
   }  
   @Test  
   public void coba()  
   {  
     //Buat banyak Lot
     auction1.enterLot("Buku Fisika Dasar 1");  
     auction1.enterLot("Buku Sistem Digital");  
     auction1.enterLot("Emas 24 karat 1kg");  
     //Show the entered lots  
     auction1.showLots();  
     //Buat bidder  
     Person person1 = new Person("Bambang Ruwanto");  
     //Buat bid  
     auction1.makeABid(2, person1, 5000);  
     //Tampilkan lots to check bid  
     auction1.showLots();  
     //Close auctions  
     auction1.close();  
   }
}

Hasil Output:






  

Komentar

Postingan populer dari blog ini

Program Java : Membuat Game

EAS Rekayasa Kebutuhan

Tugas 7 Manajemen Proyek Perangkat Lunak