Es vēlētos konvertēt masīvu uz kopu Java programmā. Ir daži acīmredzami veidi, kā to izdarīt (t. i., ar cilpu), bet es gribētu kaut ko nedaudz glītāku, kaut ko līdzīgu:
java.util.Arrays.asList(Object[] a);
Kādas idejas?
Piemēram, šis:
Set<T> mySet = new HashSet<>(Arrays.asList(someArray));
Java 9+, ja nemodificējams komplekts ir ok:
Set<T> mySet = Set.of(someArray);
Java 10+ versijā vispārīgo tipa parametru var atvasināt no masīva komponenta tipa:
var mySet = Set.of(someArray);
Pēc tam, kad esat izpildījis Arrays.asList(array)
, varat izpildīt Set set = new HashSet(list);
Šeit ir metodes paraugs, ko varat uzrakstīt:
public <T> Set<T> GetSetFromArray(T[] array) {
return new HashSet<T>(Arrays.asList(array));
}