je cette fonction qui retourne un type de données InetAddress []Eclipse me donne une erreur bizarre lors de la compilation
public InetAddress []
lookupAllHostAddr(String host) throws UnknownHostException {
Name name = null;
try {
name = new Name(host);
}
catch (TextParseException e) {
throw new UnknownHostException(host);
}
Record [] records = null;
if (preferV6)
records = new Lookup(name, Type.AAAA).run();
if (records == null)
records = new Lookup(name, Type.A).run();
if (records == null && !preferV6)
records = new Lookup(name, Type.AAAA).run();
if (records == null)
throw new UnknownHostException(host);
InetAddress[] array = new InetAddress[records.length];
for (int i = 0; i < records.length; i++) {
Record record = records[i];
if (records[i] instanceof ARecord) {
ARecord a = (ARecord) records[i];
array[i] = a.getAddress();
} else {
AAAARecord aaaa = (AAAARecord) records[i];
array[i] = aaaa.getAddress();
}
}
return array;
}
Eclipse se plaint que le type de retour doit être byte [] [] mais quand je change le type de retour à byte [] [], il se plaint que la fonction retourne le mauvais type de données. Je suis coincé dans une boucle. Est-ce que quelqu'un sait ce qui se passe ici?
D'abord, vous devriez apprendre à utiliser les classes Collections au lieu des tableaux raw. Deuxièmement, vous devez apprendre à utiliser le nouveau pour chaque construction au lieu d'itérer sur les tableaux avec un compteur, il est répandu pour des erreurs au mieux. –