Mentre si guarda il codice sorgente del metodo addAll di CollectionUtils. Ho notato che utilizza |=
simboloaddAll() restituisce false?
public static <T> boolean addAll(Collection<? super T> c, T... elements) {
boolean result = false;
for (T element : elements)
result |= c.add(element);
return result;
}
Dalla mia comprensione |=
è un operatore bitwise or e solo una scorciatoia di result = result|c.add(element)
, così per esempio:
System.out.println(false|true);//true
System.out.println(false|false);//false
System.out.println(true|false);//true
System.out.println(true|true);//true
Ciò significa che se qualsiasi elemento aggiunto con successo, lo farà ritorna vero Ora mi chiedo se ci sarà un'istanza, restituirà false? Se no, perché ha un ritorno?
Provare a impostare.addAll (set) 'per arbitrario' Imposta '. –
@MarkoTopolnik Sì. Ho fatto lo stesso e il risultato è stato pompato :) –
grazie. Ho dimenticato il Set. Quindi, se uso List, restituirà sempre true, poiché può contenere valori duplicati. – user23123412