Setelah selesai dengan tugas Thread di postingan sebelumnya...
Ane sekalian posting aja nih collection bikinan ane, ya semoga bisa membantu agan-agan yang dalam kegalauan :PCollection ini berisi mulai dari ArrayList, LinkedList, Vector sama Iteration...
*mumet mumet wes...import java.util.*;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* GUI_Collection.java
*
* Created on Oct 11, 2011, 5:01:54 PM
*/
/**
*
* @author MAGISTRATE
*/
public class GUI_Collection extends javax.swing.JFrame {
/** Creates new form GUI_Collection */
public GUI_Collection() {
initComponents();
nomor.setText(String.valueOf(no));
}
ArrayList<String> array = new ArrayList<String>();
LinkedList<String> linked = new LinkedList<String>();
Vector vector = new Vector();
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
jScrollPane2 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
nama = new javax.swing.JTextField();
nim = new javax.swing.JTextField();
makul = new javax.swing.JTextField();
nilai = new javax.swing.JTextField();
jScrollPane1 = new javax.swing.JScrollPane();
tabel = new javax.swing.JTable();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jLabel5 = new javax.swing.JLabel();
nomor = new javax.swing.JTextField();
jLabel6 = new javax.swing.JLabel();
terambil_array = new javax.swing.JLabel();
jLabel7 = new javax.swing.JLabel();
terambil_linked = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
parray = new javax.swing.JLabel();
jLabel10 = new javax.swing.JLabel();
plinked = new javax.swing.JLabel();
jLabel11 = new javax.swing.JLabel();
pvector = new javax.swing.JLabel();
iteratornya = new javax.swing.JLabel();
jButton3 = new javax.swing.JButton();
jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jMenuItem1 = new javax.swing.JMenuItem();
jMenuItem2 = new javax.swing.JMenuItem();
jTable1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
jScrollPane2.setViewportView(jTable1);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel1.setText("Nama Mahasiswa");
jLabel2.setText("NIM");
jLabel3.setText("Mata Kuliah");
jLabel4.setText("Nilai");
tabel.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"Nomor", "Nama", "NIM", "Makul", "Nilai"
}
));
tabel.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
tabelMouseClicked(evt);
}
});
jScrollPane1.setViewportView(tabel);
jButton1.setText("Tampil");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setText("Ambil");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jLabel5.setText("Nomor");
nomor.setEditable(false);
jLabel6.setText("Data Array List yang terambil");
terambil_array.setText("...............");
jLabel7.setText("Data Linked List yang terambil");
terambil_linked.setText("...............");
jLabel8.setText("Panjang Array List sekarang");
parray.setText("...............");
jLabel10.setText("Panjang Linked List sekarang");
plinked.setText("...............");
jLabel11.setText("Panjang Vector");
pvector.setText("...............");
iteratornya.setText("...............");
jButton3.setText("Iterator");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
jMenu1.setText("File");
jMenuItem1.setText("Author");
jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem1);
jMenuItem2.setText("Exit");
jMenuItem2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem2ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem2);
jMenuBar1.add(jMenu1);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 303, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel8)
.addComponent(jLabel10))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 105, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(parray, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(plinked)))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel1)
.addComponent(jLabel2)
.addComponent(jLabel3)
.addComponent(jLabel4))
.addGap(30, 30, 30)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(makul)
.addComponent(nim)
.addComponent(nilai, javax.swing.GroupLayout.DEFAULT_SIZE, 63, Short.MAX_VALUE)
.addComponent(nomor)
.addComponent(nama, javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addComponent(jLabel5))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, 90, Short.MAX_VALUE)
.addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, 90, Short.MAX_VALUE)))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel11)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 170, Short.MAX_VALUE)
.addComponent(pvector))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 175, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 198, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 45, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(terambil_array, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(terambil_linked)))
.addGroup(layout.createSequentialGroup()
.addComponent(jButton3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 172, Short.MAX_VALUE)
.addComponent(iteratornya)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(nomor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton1))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(nama, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton2))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(nim, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(makul, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(nilai, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(28, 28, 28)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel8)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jLabel10)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jLabel11))
.addGroup(layout.createSequentialGroup()
.addComponent(parray)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(plinked)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(pvector)))
.addGap(51, 51, 51)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel6)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jLabel7))
.addGroup(layout.createSequentialGroup()
.addComponent(terambil_array)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(terambil_linked)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 25, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton3)
.addComponent(iteratornya))
.addContainerGap())
);
pack();
}// </editor-fold>//GEN-END:initComponents
private void tabelMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_tabelMouseClicked
// TODO add your handling code here:
}//GEN-LAST:event_tabelMouseClicked
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
DefaultTableModel model = (DefaultTableModel) tabel.getModel();
if (nama.getText().isEmpty()||nim.getText().isEmpty()||makul.getText().isEmpty()||nilai.getText().isEmpty()){
JOptionPane.showMessageDialog(null, "Data tidak lengkap");
}else{
if (array.size()==i){
array.add(nama.getText());
linked.addLast(nim.getText());
vector.add(makul.getText());
model.addRow(new Object[]{nomor.getText(),array.get(i),linked.get(i),vector.get(i),nilai.getText()});
no++;
i++;
parray.setText(String.valueOf(array.size()));
plinked.setText(String.valueOf(linked.size()));
pvector.setText(String.valueOf(vector.size()));
nomor.setText(String.valueOf(no));
nama.setText("");
nim.setText("");
makul.setText("");
nilai.setText("");
}else{
JOptionPane.showMessageDialog(null, "Tutup program kemudian mulai kembali");
}
}
}//GEN-LAST:event_jButton1ActionPerformed
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
DefaultTableModel model = (DefaultTableModel) tabel.getModel();
if(tabel.getSelectedRow() == 0){
terambil_array.setText(array.remove(0));
terambil_linked.setText(linked.remove());
vector.remove(0);
parray.setText(String.valueOf(array.size()));
plinked.setText(String.valueOf(linked.size()));
pvector.setText(String.valueOf(vector.size()));
model.removeRow(tabel.getSelectedRow());
}else if(tabel.getSelectedRow() == 1){
terambil_array.setText(array.remove(1));
terambil_linked.setText(linked.remove(1));
vector.remove(1);
parray.setText(String.valueOf(array.size()));
plinked.setText(String.valueOf(linked.size()));
pvector.setText(String.valueOf(vector.size()));
model.removeRow(tabel.getSelectedRow());
}else if(tabel.getSelectedRow() == 2){
terambil_array.setText(array.remove(2));
terambil_linked.setText(linked.remove(2));
vector.remove(2);
parray.setText(String.valueOf(array.size()));
plinked.setText(String.valueOf(linked.size()));
pvector.setText(String.valueOf(vector.size()));
model.removeRow(tabel.getSelectedRow());
}else if(tabel.getSelectedRow() == 3){
terambil_array.setText(array.remove(3));
terambil_linked.setText(linked.remove(3));
vector.remove(3);
parray.setText(String.valueOf(array.size()));
plinked.setText(String.valueOf(linked.size()));
pvector.setText(String.valueOf(vector.size()));
model.removeRow(tabel.getSelectedRow());
}else{
JOptionPane.showMessageDialog(null, "Hanya boleh mengambil data 1 sampai 4");
}
}//GEN-LAST:event_jButton2ActionPerformed
private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed
System.exit(0);
}//GEN-LAST:event_jMenuItem2ActionPerformed
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed
JOptionPane.showMessageDialog(null, "Created by :\nCahyo Dimas - 672010012");
}//GEN-LAST:event_jMenuItem1ActionPerformed
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
try {
Iterator elemen = linked.iterator();
while(elemen.hasNext()){
iteratornya.setText(String.valueOf(elemen.next()));
}
} catch (Exception e) {
}
}//GEN-LAST:event_jButton3ActionPerformed
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new GUI_Collection().setVisible(true);
}
});
}
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JLabel iteratornya;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel11;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JMenu jMenu1;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuItem jMenuItem1;
private javax.swing.JMenuItem jMenuItem2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JTable jTable1;
private javax.swing.JTextField makul;
private javax.swing.JTextField nama;
private javax.swing.JTextField nilai;
private javax.swing.JTextField nim;
private javax.swing.JTextField nomor;
private javax.swing.JLabel parray;
private javax.swing.JLabel plinked;
private javax.swing.JLabel pvector;
private javax.swing.JTable tabel;
private javax.swing.JLabel terambil_array;
private javax.swing.JLabel terambil_linked;
// End of variables declaration//GEN-END:variables
private int no = 1;
private int i = 0;
}
Tidak ada komentar:
Posting Komentar