Hallo! Kann mir vlt jemand helfen? Ich weiß nicht genau was ich machen soll.
Betrachten Sie eine Klasse Translator<T1, T2>, die eine 1:1 Beziehung von Objekten abbildet. Betrachten Sie das folgende Beispiel:
...
Translator <String , String > germanEnglish = new Translator <>(); germanEnglish.put("Hallo", "Hello");
System.out.println(germanEnglish.translate("Hallo")); // -> Hello System.out.println(germanEnglish.retranslate("Hello")); // -> Hallo ...
Hier wird ein neuer Translator angelegt, der Strings in Strings u ̈bersetzt. Mit der Methode put k ̈onnen neue U ̈bersetzungen angelegt werden, hier Hello – Hallo. Mit der Methode translate kann jetzt ein Objekt vom Typ T1 auf den Typ T2 ,,gemapped” wer- den. Im Gegensatz zu einer Map ist aber auch der umgekehrte Weg m ̈oglich: retranslate u ̈bersetzt ein Objekt vom Typ T2 nach T1.
T1 und T2 sind unabh ̈angig, und k ̈onnen natu ̈rlich auch unterschiedliche Typen sein:
Translator <String , Integer > numbers = new Translator <String , Integer >(); numbers.put("ONE", 1);
numbers.put("TWO", 2);
numbers.put("THREE", 3);
System.out.println(numbers.translate("THREE"));
for (int i = 1; i < 4; i++) {
System.out.println(numbers.retranslate(i));}
Implementieren Sie die Klasse Translator<T1, T2> und testen Sie anhand eines einfachen Beispiels deren Funktion. Argumentieren Sie, warum Sie sich fu ̈r ihre L ̈osung entschieden haben!
Betrachten Sie eine Klasse Translator<T1, T2>, die eine 1:1 Beziehung von Objekten abbildet. Betrachten Sie das folgende Beispiel:
...
Translator <String , String > germanEnglish = new Translator <>(); germanEnglish.put("Hallo", "Hello");
System.out.println(germanEnglish.translate("Hallo")); // -> Hello System.out.println(germanEnglish.retranslate("Hello")); // -> Hallo ...
Hier wird ein neuer Translator angelegt, der Strings in Strings u ̈bersetzt. Mit der Methode put k ̈onnen neue U ̈bersetzungen angelegt werden, hier Hello – Hallo. Mit der Methode translate kann jetzt ein Objekt vom Typ T1 auf den Typ T2 ,,gemapped” wer- den. Im Gegensatz zu einer Map ist aber auch der umgekehrte Weg m ̈oglich: retranslate u ̈bersetzt ein Objekt vom Typ T2 nach T1.
T1 und T2 sind unabh ̈angig, und k ̈onnen natu ̈rlich auch unterschiedliche Typen sein:
Translator <String , Integer > numbers = new Translator <String , Integer >(); numbers.put("ONE", 1);
numbers.put("TWO", 2);
numbers.put("THREE", 3);
System.out.println(numbers.translate("THREE"));
for (int i = 1; i < 4; i++) {
System.out.println(numbers.retranslate(i));}
Implementieren Sie die Klasse Translator<T1, T2> und testen Sie anhand eines einfachen Beispiels deren Funktion. Argumentieren Sie, warum Sie sich fu ̈r ihre L ̈osung entschieden haben!