IniziaInizia gratis

Finally

Ora modifica il calcolatore SplitTheBill dell'esercizio precedente per usare un finally che stampi il conto per ogni individuo, anche quando viene intercettata un'Exception.

Questo esercizio fa parte del corso

Tipi di dati ed eccezioni in Java

Visualizza il corso

Istruzioni dell'esercizio

  • Aggiungi un try e l'inizio del blocco di codice try.
  • Completa il blocco di codice catch e aggiungi un blocco di codice finally.
  • Completa il blocco di codice finally.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

class SplitTheBill {
	public static void main(String[] args) {
		BigDecimal bill = new BigDecimal(125.50);
		computeEachBill(bill, 5);
		computeEachBill(bill, 0);
	}

	public static void computeEachBill(BigDecimal bill, int people) {
		BigDecimal individualBill = new BigDecimal(0);
		BigDecimal numPeople = new BigDecimal(people);
		// Add a try and the beginning of the try code block
		____ ____
			individualBill = bill.divide(numPeople);
        } catch (ArithmeticException e) {
			System.out.println("You didn't provide a positive number of people to split the bill among. Assuming 2 people.");
			numPeople = new BigDecimal(2);
			individualBill = bill.divide(numPeople);
			// End the catch code block and add a finally block
        ____ ____ ____
			System.out.println("Bill for each of " + numPeople + " persons is: " + individualBill);
		// End the finally block
        ____
	}
}
Modifica ed esegui il codice