Je mettais en œuvre une surcharge de méthode avec 2 types de données différents. C'est ainsi que j'ai fini avec le code. Mais maintenant, il ne peut pas trouver les symboles c et d. de l'aide ?Comment réparer 'can not find symbol' dans un appel de fonction?
import java.util.*;
import java.lang.*;
public class LargestOfTwoTest{
public static void main(String args[]) throws Exception{
Scanner scan = new Scanner(System.in);
System.out.println("Enter two numbers, and I wiil show you which one's largest!\n");
System.out.println("Enter two numbers: ");
double a = scan.nextDouble();
double b = scan.nextDouble();
if (a==(Math.floor(a))){
int c = (int) a;
}
else{
double c = a;
}
if (b==(Math.floor(b))){
int d = (int) b;
}
else {
double d = b;
}
System.out.print("Largest of the numbers is "+largest(c,d));
}
public static int largest(int x, int y){
if (x>y)
return x;
//System.out.print("Largest of the numbers is "+x);
else
return y;
//System.out.print("Largest of the numbers is "+y);
}
public static double largest(double x, double y){
if (x>y)
return x;
//System.out.print("Largest of the numbers is "+x);
else
return y;
//System.out.print("Largest of the numbers is "+y);
}
}
indique l'erreur dans cette ligne
System.out.print("Largest of the numbers is "+largest(c,d));
..
LargestOfTwoTest.java:29: erreur: ne peut pas trouver le symbole
(c et d)
Vous avez déclaré 'c' et' d' hors de portée pour votre facturation cation de 'plus grand ', cela n'a rien à voir avec une surcharge. – Mena
Dans une seule portée, vous ne pouvez avoir qu'une déclaration d'une variable. Votre tentative de création de déclarations différentes en plaçant les déclarations dans un 'if' ne fonctionnera pas car les blocs' if' sont des étendues séparées et la déclaration sortira de la portée dès que le bloc sera terminé. – RealSkeptic
Vous devez reformuler votre titre pour qu'il soit spécifique à une question, ou vous allez continuer à être déprimé. Juste une tête amicale. – samosaris