In un problema simile a quello descritto in this unanswered question e this other unanswered question, ricevo un avviso in Eclipse Luna Service Release 1 (4.4.1) (20140925-1800) lettura, "(Ripristinato) Incoerenza interna rilevato durante l'analisi della forma lambda ". Il codice è il seguente:Incoerenza interna rilevata durante l'analisi della forma lambda
public static <T> T findFirst(Iterable<T> list, Predicate<T> condition) {
/* ... */
}
public static Integer findFirstPrime(Iterable<Integer> integers) {
return findFirst(integers,
integer -> {
/* return either true or false */
}
);
}
L'avvertimento è sollevata sulla lettura del testo integer ->
. C'è un bug report che indica che il problema è stato risolto per Eclipse Mars 4.5, ma cosa posso fare nel frattempo? Se desidero utilizzare @SuppressWarnings
, come faccio a sapere quale tipo di avviso fornire?
Spesso si può ottenere sbarazzarsi di questi avvertimenti solo con una piccola mano che tiene per alleggerire il carico sull'esecuzione del tipo di inferenza, ad es qualcosa come '(intero intero) -> ...' per assicurarsi che sappia cosa sta facendo. –