Ho affrontato la domanda di intervista di seguito.puzzle intervista Java relativo al set
qual è l'output del codice riportato di seguito.
package com.demo;
import java.util.HashSet;
import java.util.Set;
public class Test {
public static void main(String[] args) {
Set<Short> set=new HashSet<Short>();
for (short i = 0; i < 10; i++){
set.add(i);
set.remove(i-1);
}
System.out.println(set.size());
}
}
Si sta dando uscita: 10
Ma io sono confondere il motivo per cui la sua uscita 10.
Qualcuno mi può rispondere si prega di quello che succede qui.
Grazie
SItansu
Vale anche la pena notare che non viene visualizzato un avviso o un errore per le mancate corrispondenze di tipo, poiché la rimozione è definita per accettare un argomento di tipo 'Object' anche per' Set '. –
Il compilatore è davvero felice. Il mio IDE, tuttavia (IntelliJ) è abbastanza intelligente da avvertirmi su questo probabile bug. –
Ah, sto usando eclipse al momento, ma non mostra nulla per questo. Sospiro. (Probabilmente ha un setting per questo da qualche parte però ....) –