Если вы используете Коллекции Eclipse (ранее коллекции GS ), вы можете использовать метод powerSet()
для всех SetIterables.
MutableSet set = UnifiedSet.newSetWith(1, 2, 3);
System.out.println("powerSet = " + set.powerSet());
// prints: powerSet = [[], [1], [2], [1, 2], [3], [1, 3], [2, 3], [1, 2, 3]]
Примечание: я являюсь коммиттером для коллекций Eclipse.