summaryrefslogtreecommitdiffstats
path: root/Master/Reference Architectures and Patterns/hjp5/examples/Listing0712.java
blob: d42bf2406dd5f6774c73d52cee24e3f150e35f25 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/* Listing0712.java */

public class Listing0712
{
  public static void registrierKasse(Object... args)
  {
    double zwischensumme = 0;
    double gesamtsumme   = 0;
    for (int i = 0; i < args.length; ++i) {
      if (args[i] instanceof Number) {
        zwischensumme += ((Number)args[i]).doubleValue();
      } else {
        System.out.println(args[i] + ": " + zwischensumme);
        gesamtsumme += zwischensumme;
        zwischensumme = 0;
      }
    }
    System.out.println("Gesamtsumme: " + gesamtsumme);
  }

  public static void main(String[] args)
  {
    registrierKasse(
      1.45, 0.79, 19.90, "Ware",
      -3.00, 1.50, "Pfand",
      -10, "Gutschein"
    );
  }
}