In una delle mie classi Java ho queste 2 funzioni molto simili. C'è un modo in Java per combinarli in un'unica funzione, quindi non devo mantenere 2 funzioni?Come combinare funzioni Java simili in una (In C++ userei i modelli)
public static boolean areValuesValid(double [] values, int numElements) {
if(values == null || values.length != numElements) {
return false;
}
for(int i = 0; i < numElements; ++i) {
if(Double.isNaN(values[i])) {
return false;
}
}
return true;
}
public static boolean areValuesValid(float [] values, int numElements) {
if(values == null || values.length != numElements) {
return false;
}
for(int i = 0; i < numElements; ++i) {
if(Float.isNaN(values[i])) {
return false;
}
}
return true;
}
Considerare l'utilizzo di un generatore di codice, ad es. https://github.com/square/javapoet – midor
Si noti che C++ non combina le funzioni simili in uno utilizzando i modelli; i modelli generano una nuova funzione per ogni tipo diverso. –
@Luovo Bloch, sì è vero, ma io c + h ho solo bisogno di mantenere una funzione modello nel mio codice sorgente piuttosto che due. –