import java.util.Scanner; class BankDetails { private String accno; private String name; private String acc_type; private long balance; Scanner sc = new Scanner(System.in); // Method to open a new account public void openAccount() { System.out.print("Enter Account No: "); accno = sc.next(); System.out.print("Enter Account type: "); acc_type = sc.next(); System.out.print("Enter Name: "); name = sc.next(); System.out.print("Enter Balance: "); balance = sc.nextLong(); } // Method to display account details public void showAccount() { System.out.println("Name of account holder: " + name); System.out.println("Account no.: " + accno); System.out.println("Account type: " + acc_type); System.out.println("Balance: " + balance); } // Method to deposit money public void deposit() { long amt; System.out.println("Enter the amount you want to deposit: "); amt = sc.nextLong(); balance = balance + amt; } // Method to withdraw money public void withdrawal() { long amt; System.out.println("Enter the amount you want to withdraw: "); amt = sc.nextLong(); if (balance >= amt) { balance = balance - amt; System.out.println("Balance after withdrawal: " + balance); } else { System.out.println("Your balance is less than " + amt + "\tTransaction failed...!!"); } } // Method to search an account number public boolean search(String ac_no) { if (accno.equals(ac_no)) { showAccount(); return true; } return false; } } public class BankingApp { public static void main(String arg[]) { Scanner sc = new Scanner(System.in); // Create initial accounts System.out.print("How many number of customers do you want to input? "); int n = sc.nextInt(); BankDetails[] accounts = new BankDetails[n]; for (int i = 0; i < accounts.length; i++) { accounts[i] = new BankDetails(); accounts[i].openAccount(); } // Main menu loop int choice; do { System.out.println("\n ***Banking System Application***"); System.out.println("1. Display all account details"); System.out.println("2. Search by Account number"); System.out.println("3. Deposit the amount"); System.out.println("4. Withdraw the amount"); System.out.println("5. Exit"); System.out.print("Enter your choice: "); choice = sc.nextInt(); switch (choice) { case 1: // Display all account details for (int i = 0; i < accounts.length; i++) { accounts[i].showAccount(); } break; case 2: // Search by Account number System.out.print("Enter account no. you want to search: "); String ac_no = sc.next(); boolean found = false; for (int i = 0; i < accounts.length; i++) { found = accounts[i].search(ac_no); if (found) { break; } } if (!found) { System.out.println("Search failed! Account doesn't exist..!!"); } break; case 3: // Deposit the amount System.out.print("Enter Account no. : "); ac_no = sc.next(); found = false; for (int i = 0; i < accounts.length; i++) { found = accounts[i].search(ac_no); if (found) { accounts[i].deposit(); break; } } if (!found) { System.out.println("Search failed! Account doesn't exist..!!"); } break; case 4: // Withdraw the amount System.out.print("Enter Account No : "); ac_no = sc.next(); found = false; for (int i = 0; i < accounts.length; i++) { found = accounts[i].search(ac_no); if (found) { accounts[i].withdrawal(); break; } } if (!found) { System.out.println("Search failed! Account doesn't exist..!!"); } break; case 5: System.out.println("See you soon..."); break; default: System.out.println("Invalid choice! Please select a valid option."); break; } } while (choice != 5); } }