0% menganggap dokumen ini bermanfaat (0 suara)
18 tayangan15 halaman

Pengelolaan Akun di JavaBankList

Kode program JavaBankArrayList digunakan untuk mengelola akun bank menggunakan array list. Program dapat menampilkan, membuat, menghapus, dan melakukan transaksi setoran dan penarikan pada akun yang disimpan dalam array list.

Diunggah oleh

Ovie Widiyastuti
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
18 tayangan15 halaman

Pengelolaan Akun di JavaBankList

Kode program JavaBankArrayList digunakan untuk mengelola akun bank menggunakan array list. Program dapat menampilkan, membuat, menghapus, dan melakukan transaksi setoran dan penarikan pada akun yang disimpan dalam array list.

Diunggah oleh

Ovie Widiyastuti
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

Nama : Ovie Widiyastuti

Kelas : TI-2017-P1

NIM : 41170387

1. Periksa kode di JavaBankList untuk melihat bagaimana cara mendeklarasikan dan


menggunakan ArrayList Accounts.

// ArrayList to store Account details

ArrayList<Account> Accounts = new ArrayList<Account>();

replaces ;

Jawab : kode diatas digunakan untuk menyimpan dan membuat akun baru yang disimpan dalam
array list berupa Account.

// Array to store Account details

static Account myAccounts[] = new Account[MaxAccounts];

Jawab : kode diatas merupakan array dua dimensi untuk menyimpan detail akun, dimana akun
yang dibuat dibatasi oleh [MaxAccounts];

penjelasaan:

kode deskripsi
public final static int MaxAccounts = 10; Dalam kode tersebut dimana akun yang dapat
dibuat adalah 10 akun
static Account myAccounts[] = new Account akan disimpan dalam array
Account[MaxAccounts]; myAccount dimana jumlah akun yang dibuat
dibatasi dari MaxAccount(10)

2. Uji kode di JavaBankList untuk melihat bagaimana kode dibuat pada akun menggunakan
ArrayList.

//add a new account to the list using the Account constuctor

[Link](new Account(Name,Accountnum,Balance));

Jawab :Kode diatas digunakkan untuk menambahkan akun baru yang akan disimpan kedalam
variabel Nama,Accountnum,Balance.
//Set a temp Account for display purposes

Account tempAccount = (Account)[Link](noAccounts);

Jawab : Kode diatas digunakan untuk menampilkan dan mendapatkan data akun sementara yang
telah disimpan kedalam arrayList Account berdasarkan noAccounts yang telah dibuat.

//Display tempAccount

[Link]([Link]() + " " + [Link]()


+ " " + [Link]());

Jawab : kode diatas merupakan satu kesatuan dari Account tempAccount =


(Account)[Link](noAccounts); digunakan untuk menampilkan detail data akun
sementara dari arraylist account yang baru dibuat dengan menampilkan secara berurutan nama,
akun number, dan balance.

3. Periksa kode di JavaBankArrayList untuk melihat bagaimana kode untuk membuat deposit
atau withdrawal digunakan.
4. Amandemen program JavaBankArrayList untuk menghapus akun dengan menggunakan
operasi hapus. Petunjuk: Ini serupa dengan operasi yang ditetapkan untuk transaksi.

Source code
private void DeleteAccountJButtonActionPerformed(ActionEvent event) {

if ([Link]() == 0) {
[Link]("No Accounts currently created");
}else {

// get user input


int Accountnum = [Link]([Link]());
for ( int i = 0; i < [Link](); i++ )
{
// get the element
Account tempAccount = (Account)[Link](i);
if (([Link] == Accountnum)) {
[Link](i);
//break;
}

}
}
[Link]("");
[Link]("0");
[Link]("0");
[Link]("0");
[Link]("0");

}
5. Unit menguji kode baru Anda
6. Jelajahi JavaBank. Catat pengamatan Anda dan jawaban atas pertanyaan berikut di jurnal
Anda.

Apa yang terjadi saat Anda:

Tampilkan Akun
private void DisplayJButtonActionPerformed(ActionEvent event) {

Name = [Link]();

[Link]("");

if ([Link]()) {

[Link]("No Accounts currently created");

}else {

for (int i=0; i < [Link](); i++) {

Account tempAccount = (Account)[Link](i);

[Link]([Link]() + " " +


[Link]() + " " + [Link]() + "\n");
}

// clear other JTextFields for new data

[Link]("");

[Link]("0");

[Link]("0");

[Link]("0");

[Link]("0");

Buat Akun
private void CreateAccountJButtonActionPerformed(ActionEvent event) {

// [Link]("Create Account Button Clicked");

[Link]("");

Name = "";

//Get Name from Text Field

Name = [Link]();

//Get Accountnum from Text Field and convert to int unless blank then set to 0

if ([Link]() == "0") {

Accountnum = 0;

else {

Accountnum = [Link]([Link]());

//Get Balance from Text Field and convert to int unless blank then set to 0

if ([Link]() == "0") {

Balance = 0;

}
else {

Balance = [Link]([Link]());

if ((Name != "") & (Accountnum != 0)) {

//add a new account to the list using the Account constructor

[Link](new Account(Name,Accountnum,Balance));

//Set a temp Account for display purposes

Account tempAccount = (Account)[Link]([Link]()-1);

//Display tempAccount

[Link]([Link]() + " " +


[Link]() + " " + [Link]() + " " +
[Link]());

else {

[Link]("Both the Name field and Account Number


must be completed");

// clear other JTextFields for new data

[Link]("");

[Link]("0");

[Link]("0");

[Link]("0");

[Link]("0");
}

Hapus Akun

private void DeleteAccountJButtonActionPerformed(ActionEvent event) {

if ([Link]() == 0) {

[Link]("No Accounts currently created");

}else {

// get user input

int Accountnum = [Link]([Link]());

for ( int i = 0; i < [Link](); i++ )

// get the element

Account tempAccount = (Account)[Link](i);

if (([Link] == Accountnum)) {

[Link](i);

//break;

[Link]("");

[Link]("0");
[Link]("0");

[Link]("0");

[Link]("0");

Buat Transaksi Penarikan

private void TransactionJButtonActionPerformed(ActionEvent event) {

[Link]("");

if ([Link]() == 0) {

[Link]("No Accounts currently created");

}else {

// get user input

int Accountnum = [Link]([Link]());

int Deposit = [Link]([Link]());

int Withdraw = [Link]([Link]());

for ( int i = 0; i < [Link](); i++ )

if (([Link] == Accountnum) && (Withdraw>0)) {

[Link]([Link]()-Withdraw);
[Link](i, tempAccount);

[Link]([Link]() + " " +


[Link]() + " " + [Link]());

}}

// clear other JTextFields for new data

[Link]("");

[Link]("0");

[Link]("0");

[Link]("0");

[Link]("0");

Lakukan Transaksi Deposito

private void TransactionJButtonActionPerformed(ActionEvent event) {

[Link]("");

if ([Link]() == 0) {

[Link]("No Accounts currently created");


}else {

// get user input

int Accountnum = [Link]([Link]());

int Deposit = [Link]([Link]());

int Withdraw = [Link]([Link]());

for ( int i = 0; i < [Link](); i++ )

if (([Link] == Accountnum) && (Deposit>0)) {

[Link]([Link]()+Deposit);

[Link](i, tempAccount);

[Link]([Link]() + " " +


[Link]() + " " + [Link]());

}}

// clear other JTextFields for new data

[Link]("");

[Link]("0");

[Link]("0");

[Link]("0");

[Link]("0");
}

• Dapatkah Anda menampilkan akun sebelum ada yang dibuat?

Jawab: Ya bisa Akun bisa ditampilkan jika sudah dibuat (setelah memasukan data akun dan
click create). Tetapi jika belum ada akun yang dibuat hanya menampilkan “No Accounts
currently created”.

• Dapatkah Anda membuat akun tanpa memasukkan apapun di kolom?

Jawab : Tidak, karena syarat untuk membuat data akun baru kolom nama dan no akun harus
diisi. Jika kolom tidak diisi maka penambahan data tidak bisa dilakukan.

• Dapatkah Anda melakukan transaksi penarikan dengan jumlah di kolom Withdrawal?

Jawab : Ya bisa. Kita bisa melakukan penarikan dengan cara mengisi kolom nama, noakun dan
jumlah penarikan di kolom withdraw setelah itu klik tombol make transaction

• Dapatkah Anda melakukan transaksi deposit tanpa jumlah di bidang Deposito?

Jawab: tidak bisa, untuk melakukan transaksi deposit dengan syarat field nama dan field
noakun harus diisi berdasarkan data yang telah ditambahkan dan isi kolom deposit sesuai dengan
jumlah yang ingin ditambahkan kemudian klik “make transaction”.

• Pertanyaan lain apa yang Anda miliki tentang aplikasi JavaBank?

Jawab : bagaimna cara menampikan data sebelum dihapus, dan memasukan code dalete ke
“class Javabank” persis dengan yang ada di”class javabankarraylistdelete”

• Perubahan apa yang akan Anda buat pada aplikasi saat ini agar fungsinya lebih baik?

Jawab : Yaitu menambahkan fungsi perhitungan bunga.

• Penambahan apa yang akan Anda lakukan pada aplikasi saat ini untuk meningkatkan
fungsinya?
Jawab : yaitu dengan menambahkan fungsi perhitungan bunga untuk mengetahui bunga yang
didapatakan berdasarkan dengan data yang telah diinputkan

7. Periksa file kode dan catat jawaban atas pertanyaan berikut di Journal Anda.
 Berapa banyak file kode yang ada?
Jawab: Dari application javabank terdapat 2 file kode yang digunakan berupa javabank
dan account.
 Dimana kode utama?
Jawab: Kode utama terdapat di file class javabank dan javabankarraylistdelete
 Apa panggilan utama?
 Apa yang dipanggil saat Anda mengklik tombol create?
private void CreateAccountJButtonActionPerformed(ActionEvent event) {
}

 Pertanyaan lain apa yang Anda miliki tentang aplikasi JavaBank?


 Jawab : bagaimna cara menampikan data sebelum dihapus, dan memasukan code dalete
ke “class Javabank” persis dengan yang ada di”class javabankarraylistdelete”
 Perubahan apa yang akan Anda buat pada aplikasi saat ini agar fungsinya lebih baik?
Jawab: Yaitu menambahkan fungsi perhitungan bunga.
 Tambahan apa yang akan Anda buat pada aplikasi untuk meningkatkan fungsinya?
 Jawab : yaitu dengan menambahkan fungsi perhitungan bunga untuk mengetahui bunga
yang didapatakan berdasarkan dengan data yang telah diinputkan

8. Jalankan JavaBank dan lakukan tindakan berikut:

Aksi Nama Nasabah Nomor Rekening Saldo

Create Ade Irma 11556 300

Create Nadia 22338 500

Create Dhani 44559 1000

9. Performasikan transaksi berikut dan tampilkan akun untuk memastikan semuanya telah
selesai.

Aksi Nama Nasabah Nomor Rekening Saldo

Penarikan Ade Irma 11556 100

Simpanan Nadia 22338 200


Penarikan Andi S 44559 700

 Apa saja metode accessor di kelas akun?


Metode accessor yang terdapat dikelas akun adalah:
getaccountname () Mengembalikan nilai nama akun.
getaccountnum () Mengembalikan nilai nomor rekening.
getbalance () Mengembalikan nilai saldo akun.
 Prosedur mana yang memanggil accessors ini?
public String getaccountname ( );
public int getaccountnum ( );
public int getbalance ( )
 Apa metode modifikatornya?
setaccountname (nama String) Mengatur nilai nama akun.
setaccountnum (int num) Mengatur nilai nomor akun.
setbalance (int num) Menetapkan nilai saldo akun.
 Prosedur manakah yang memanggil pengubah ini?
public void setaccountname (nama String).
public void setaccountnum (int num).
public void setbalance (int num).

Common questions

Didukung oleh AI

For deposit transactions, the app checks that the Name, Account Number, and Deposit fields are populated. Similarly, for withdrawals, it ensures the fields are filled, and that the amount in the Withdrawal field is greater than zero. Once validated, it updates the account balance accordingly. These checks ensure transactional integrity and prevent incomplete or invalid operations .

The ArrayList is used to store Account objects in a dynamic list within the JavaBank application, allowing for flexible account management. It is preferred over a static array because the ArrayList can dynamically resize itself to accommodate more accounts beyond the initial capacity, unlike static arrays which have a fixed size determined by MaxAccounts = 10 . This flexibility makes it easier to handle a growing number of accounts without prior knowledge of the exact number required .

The deletion process in the JavaBank application involves checking if there are any accounts created, then retrieving the account number from the user input. The application iterates through the Accounts ArrayList and compares each account's account number with the user input. If a match is found, that account is removed from the list. This ensures only the account with the matching account number is deleted, maintaining accuracy during deletions .

Without restrictions on account creation, system performance could degrade as memory consumption increases, leading to slow operation or crashes if capacity is exceeded. The application attempts to prevent this by using ArrayLists which handle dynamic resizing, thus effectively managing larger data sets. However, common sense checks or hard limits should also be considered to prevent a limitless creation scenario .

When the 'Display' button is clicked and no accounts have been created yet, the application sets the displayJTextArea to show the message "No Accounts currently created." This feedback informs users that they need to create accounts first before attempting to view them .

The application meticulously processes user input by validating that essential fields such as Name and Account Number are filled before account creation . For transactions, it checks that accounts exist, and that inputs for withdrawals or deposits are non-zero and numeric. These rigorous validations minimize errors and ensure that only valid and complete data is processed .

To add a new account, the user inputs their Name and Account Number into the respective fields, with the Balance set if not zero. The system checks these fields are non-empty and then uses them to instantiate an Account object via the Account constructor, appending it to the Accounts ArrayList. After creation, the new account is retrieved using the get() method from the ArrayList, and details are displayed via displayJTextArea.setText(), ensuring immediate confirmation of the newly added account .

Accessor methods in the JavaBank application are used to retrieve account details such as the account name, number, and balance. Specifically, methods like getaccountname(), getaccountnum(), and getbalance() provide encapsulated access to these fields. They are utilized whenever account information needs to be displayed, ensuring the integrity of encapsulated data by allowing read-only access .

Enhancements to the JavaBank application could include implementing an interest calculation feature, as suggested, which would calculate interest based on account balances and input data . Additionally, user interface improvements such as clearer error messages, a summary of operations performed, and confirmation dialogs for critical actions like account deletions could improve usability.

For the 'Create Account' functionality to successfully add a new account, the Name and Account Number fields must be filled out. If either field is left empty, the account cannot be created, and the application will prompt for these fields to be filled. This input validation ensures that essential account information is provided before an account is added to the ArrayList .

Anda mungkin juga menyukai