So, I have two Sets with elements of my class Capability.
public class Capability {
    private String name;
    public Capability(){
        //
    }
    public Capability(String name){
        this.name = name;
        //this.id = count.getAndIncrement();
    }
    public String getName(){
        return name;
    }
    @Override
    public String toString(){
        return "Capability: "+name+".";
    }
}
Please disregard the value of this class over a String, this is for future expansion.
I'm trying to compare two sets that I've gotten from importing a json file, so they are not the same object, nor contain the same object, just have the same content.
public boolean allCapabilitiesMet(){
        int count = 0;
        for(Capability taskCap : this.getReqCapabilities()){
            for(Capability primCap : this.getPrimitive().getCapabilities())
            {
                System.out.println(taskCap.equals(primCap));
                System.out.println(taskCap.getName().equals(primCap.getName()));
                if(taskCap.equals(primCap)){
                    count++;
                }
            }
        }
        return count == this.getReqCapabilities().size();
        //return this.getPrimitive().getCapabilities().containsAll(this.getReqCapabilities());
    }
The goal is to see if one set is a subset of the other, which I could do with the commented return before I switched to importing from the json file.
The thing is, I could fix this right now by simply changing the if clause to the string comparison, because that does indeed work. This would be terrible once I start adding other fields to the main class.
Is there anything I can do to compare the sets content without manually checking their content?
