2 package format;
3
4 /**
5 * RadixFormat ist eine Formatierer für ganze Zahlen.
6 * Beispielprogramm zur Programmiertechnik 1, Teil 6.
7 * @author H.Drachenfels
8 * @version 6.6.2016
9 */
10 public final class RadixFormat implements Formatter {
11 private final int radix;
12
13 /**
14 * Konstruktor legt die Basis für die Zahldarstellung fest.
15 * @param r die Basis zwischen Character.MIN_RADIX und Character.MAX_RADIX.
16 */
17 public RadixFormat(int r) {
18 if (r < Character.MIN_RADIX || r > Character.MAX_RADIX) {
19 throw new IllegalArgumentException("invalid radix");
20 }
21
22 this.radix = r;
23 }
24
25 /**
26 * format formatiert ganze Zahlen zur Basis radix.
27 * @param n eine ganze Zahl.
28 * @return ein String mit der Darstellung zu Basis radix von n.
29 */
30 @Override
31 public String format(int n) {
32 return Integer.toString(n, this.radix);
33 }
34 }
35