Datentypen Type T ?

RobTop

Mitglied
Hey kurze Frage ich soll ein Programm schreiben welches die Symmetrische Differenz zweier Mengen ausgibt. Jedoch komme ich hier nicht weiter aufgrund dieses TYPE T. Das Programm ansich sollte eigentlich funktionieren, mein einzigen Problem ist es, dass ich nicht weiß wie ich die Hashsets in der Main Methode mit Integern füllen kann.
Vielen Dank im Vorraus :)



Java:
import java.util.*;

public class Aufgabe3 {
    
    public static <T> void main(String[] args) {
    
        Set<T> a = new HashSet<T>();
        Set<T> b = new HashSet<T>();
        
        
        System.out.println(symmDiff(a,b));
        
        
        
    }
    public static <T> Set<T> symmDiff(Set<T> A, Set<T> B){
        
        Set<T> Set1 = new HashSet<T>(A);
        Set1.removeAll(B);
        B.removeAll(A);
        Set1.addAll(B);

        return Set1;
    }

}
 

Barista

Top Contributor
public static <T> void main(String[] args) {
An dieser Stelle ist der Typ-Parameter T sinnlos, es sei denn, jemand ruft die main-Methode von einer anderen Methode aus auf.
Normalerweise wird die mein-Methode aber magisch beim Start des Programmes aufgerufen.

public static <T> Set<T> symmDiff(Set<T> A, Set<T> B){
Hier ist Typ-Parameter T sinnvoll.

Wie @mihe7 bereits schrieb, kannst Du Deine Sets in der main-Methode mit den entsprechenden Typ-Argumenten Integer Instanziieren und Befüllen und dann diese Methode aufrufen.
 

RobTop

Mitglied
An dieser Stelle ist der Typ-Parameter T sinnlos, es sei denn, jemand ruft die main-Methode von einer anderen Methode aus auf.
Normalerweise wird die mein-Methode aber magisch beim Start des Programmes aufgerufen.


Hier ist Typ-Parameter T sinnvoll.

Wie @mihe7 bereits schrieb, kannst Du Deine Sets in der main-Methode mit den entsprechenden Typ-Argumenten Integer Instanziieren und Befüllen und dann diese Methode aufrufen.
Vielen Dank für die schnelle Antwort, jetzt funktioniert alles. Euch allen noch einen Schönen Sonntag Abend :)
 

Barista

Top Contributor

Neue Themen


Oben