Hashset Java como serializar vários objetos
Fiz uma pergunta anterior sobre como salvar vários arquivos salvos em um arquivo .ser e me sugeriram usar um hashset porque eles são serializáveis. Eu tentei escrever um pedaço de código de teste para serializar todas as informações dentro do conjunto de hash:
public class testHashSet {
public static void main(String[] args) throws ClassNotFoundException {
testClass new1 = new testClass("Hello", "male", true);
testClass new2 = new testClass("Goodbye", "female", true);
testClass new3 = new testClass("Something", "other", false);
HashSet<testClass> hSet = new HashSet<testClass>();
hSet.add(new1);
hSet.add(new2);
hSet.add(new3);
System.out.println(hSet);
for(int i = 0; i < hSet.size(); i++) {
try {
FileOutputStream fileOut = new FileOutputStream("/Users/Prodigy958/Desktop/Hack_exeSaves.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
out.writeObject(hSet(i));
out.close();
fileOut.close();
} catch(IOException i) {
i.printStackTrace();
}
}
}
}
No entanto, estou tendo problemas para obter o código para escrever o objeto com o índice (i), porque diz que esse método não está definido para o tipoHashSet
. Existe uma maneira de percorrer todas as informações no conjunto de hash ou devo serializar o conjunto inteiro de uma só vez. Uma pergunta adicional é que, se a primeira resposta for a última, como eu desserializaria os dados em classes separadas?