import java.io.IOException; import javax.swing.JOptionPane; /** Questo programma collauda l'accesso casuale. E' possibile accedere a conti esistenti e aggiungere gli interessi, oppure creare nuovi conti */ public class BankDataTest { public static void main(String[] args) throws IOException { BankData data = new BankData(); try { data.open("bank.dat"); boolean done = false; while(!done) { String input = JOptionPane.showInputDialog("Account number or " + data.size() + "for new account"); if (input == null) done = true; else { int pos = Integer.parseInt(input); if(0 <= pos && pos < data.size()) // aggiunge interessi { SavingsAccount account = data.read(pos); System.out.println("balance =" + account.getBalance() + ", interest rate =" + account.getInterestRate()); account.addInterest(); data.write(pos,account); } else { input = JOptionPane.showInputDialog("Balance"); double balance = Double.parseDouble(input); input = JOptionPane.showInputDialog("Interest rate"); double interestRate = Double.parseDouble(input); SavingsAccount account = new SavingsAccount(interestRate); account.deposit(balance); data.write(data.size(), account); } } } } finally { data.close(); System.out.println("file closed"); System.exit(0); } } }