Domanda

Ho Java SDK 7 installato e sto usando Eclipse 3.7.1 Indigo.

Quando uso la nuova sintassi di Java 7 per definire una HashMap, funziona benissimo.

HashMap<Integer, Integer> hashMap = new HashMap<>();

Ma quando si tenta di utilizzare la sintassi di chiusura, eclisse getta errori di compilazione. Questo è quello che sto cercando di compilare.

    public static <T> Collection<T> select(Collection<T> source,
                                       {T=>Boolean} predicate) {

    Collection<T> result = new ArrayList<T>();
    for (T o : source) {
        if (predicate.invoke(o)) {
            result.add(o);
        }
    }
    return result;
}

È la sintassi sbagliata? O sto facendo male?

È stato utile?

Soluzione

Java 7 non ha chiusure -. È una caratteristica programmata per Java 8

E 'stato sperava che sarebbe in Java 7, ma non fare il taglio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top