2017-09-29 8 views
-3

Je ne peux pas sembler saisir cettePasser la sortie d'une méthode à une autre méthode java

public static void AreaP(double Dia){ 

    double R = Dia/2.0; 
    double A = PI * (R * R); 

    System.out.println("The area is: " + A); 


public static void PPSI(double Price){ 


} 

Je dois trouver le prix par pouce carré, alors je dois passer la zone que je résolu dans AreaP en la méthode PPSI et je me demandais s'il y avait un moyen de le faire parce que je sais que vous ne pouvez pas passer les méthodes dans d'autres méthodes.

+0

Vous pouvez essayer de passer deux paramètres, au lieu d'un seul, comme 'public static void ppsi (double prix, double zone)' –

+0

Serait-il possible de prendre le paramètre DIA comme paramètre et d'appeler AreaP dans PSSI? ? – OKAN

+0

J'ai résolu pour la zone dans la méthode précédente mais est-il possible de passer la réponse de AreaP à PPSI? – Log

Répondre

-4

Que diriez-vous ceci:

private static final double PI = 3.1416; 

public static double areaP(double dia){ 
    double r = dia/2.0; 
    double a = PI * (r * r); 

    return a; 
} 

public static void getPricePerSquareInch(double price){ 
    System.out.print(areaP(75)/price); 
} 
+0

Comment donner un ** prix ** à "areaP" est-il logique? –

+0

Il me semble qu'utiliser une valeur appelée «prix» comme le diamètre d'un cercle est probablement une très mauvaise idée. –

-1
public static double A=0; 

public static void AreaP(double Dia){ 

    double R = Dia/2.0; 
    A = PI * (R * R); 

    System.out.println("The area is: " + A); 
    System.out.println("The price per square inch is:+PPSI(50)) 
} 


public static double PPSI(double Price){ 
    return Price/A; 

} 

Faire la variable « A » statique et en dehors de la méthode vous permettra d'y accéder de partout à l'intérieur de la classe ou même à l'extérieur (For.eg, Classname. A)

+0

Cela ne fonctionne pas. vous devez appeler la méthode AreaP dans l'ordre défini une valeur pour A. –

+0

Vous ne pouvez pas définir le résultat de A à une constante car il ne cesse de changer sa valeur. –

+0

1. Il devrait avoir une méthode principale appelant AreaP() 2. chaque fois que A change de valeur, nous imprimons Prix par Sq. pouces aussi. Cela peut échouer dans muti-threading, mais je ne pense pas qu'il a une intention ou une connaissance de Threads dès maintenant. –