Les lambdas sur JAVA

Fermé
boooker - 22 nov. 2019 à 05:31
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 25 nov. 2019 à 08:34
Bonjour,

Configuration: Windows / Chrome 78.0.3904.108


Je n'arrive pas a utiliser les lambdas sur eclipse, merci de votre aide
A voir également:

2 réponses

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
22 nov. 2019 à 07:20
Bonjour,

C'est vague comme problème.

Quelle version d'Eclipse utilises tu ?
Quelle version de Java est configurée ?
Quel code essayes-tu de faire fonctionner ?
Quel erreur est-ce que tu obtiens ?
0
merci pour la reponse :
la version java est 2019-09
JAVA 11
Le code :


public class Main {

public static void main(String[] args) {
// TODO Auto-generated method stub
()->1337;

}

}
l'erreur
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Syntax error, insert "AssignmentOperator Expression" to complete Expression

at Main.main(Main.java:6)
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015 > boooker
Modifié le 22 nov. 2019 à 14:52
Ici le problème c'est le code.

En Java tu ne peux pas écrire directement ceci :
public static void main(String[] args) {
   1337; // Syntax error, insert "AssignmentOperator Expression" to complete Expression
}

Il faudrait que tu assignes la valeur à une variable, par exemple :
public static void main(String[] args) {
   int n = 1337;
}

C'est le même principe avec les lambdas, tu ne peux pas écrire directement :
public static void main(String[] args) {
   () -> 1337; // Syntax error, insert "AssignmentOperator Expression" to complete Expression
}

Il faut que tu assignes la méthode à une référence, par exemple :
public static void main(String[] args) {
    IntSupplier getN = () -> 1337; // import java.util.function.IntSupplier;
}
0
merci pour votre reponse, ca peut paraitre bete , mais dans ce cas l'eclipse ne retourne aucune valeur ,sur la console. alors comment afficher le resultat ?
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
Modifié le 25 nov. 2019 à 08:42
En effet, le programme n'affiche rien, de même qu'il n'afficherait rien avec juste
int n = 1337;

Pour qu'il y ait un affichage il faut qu'il y ait un
System.out.println
dans ton code...

public static void main(String[] args) {
    IntSupplier getN = () -> 1337; // import java.util.function.IntSupplier;
    int n = getN.getAsInt();
    System.out.println(n); // 1337
}
0