2013-01-17 20 views
3

我被困在我的程序中。我需要在主要方法中使用函數的幫助。到目前爲止,我有這個:如何在主菜單中使用功能?

double x, y; 
    char op; 

    System.out.print("X: "); 
    x = keyboard.nextDouble(); 
    System.out.print("Y: "); 
    y = keyboard.nextDouble(); 

    System.out.print("Enter Operation: "); 
    op = keyboard.next().charAt(0); 

    do 
    { 
     if (op == '+'); 
      System.out.print(".."); 

    } 
    while (op != 'q'); 

    System.out.print("Bye!"); 
} 

public static double sum (double x, double y) 
{ 
    double sum = 0; 
    sum = (x + y); 

    return sum; 
} 
public static double minus (double x, double y) 
{ 
    double minus = 0; 
    minus = (x - y); 

    return minus; 
} 
public static double multiply (double x, double y) 
{ 
    double multiply = 0; 
    multiply = (x * y); 

    return multiply; 
} 
public static double divide (double x, double y) 
{ 
    double divide = 0; 
    divide = (x/y); 

    return divide; 
} 

對於「if語句」我想使用的功能。如果操作是'+',那麼它將使用求和函數來添加x和y。但是,如何在「if語句」中輸入它? 對不起。這是我的第二個編程課,所以我還在學習。

回答

2

你調用另一個函數是這樣的:

double output = sum(1,3); 

甚至更​​一般地,它是這樣的:

OutputType VariableToHoldOutput = MethodName(Parameter1, Parameter2, etc); 

隨着輸出是可選的存儲。如果輸出類型是無效的,你甚至不能存儲它。這將導致這樣的事情

MethodName(Parameter1, Parameter2, etc); 

而且,if語句後面沒有分號。你有它的方式是等價於:

if (op == '+') 
{ 
    ; 
} 
System.out.print("..") 

你可能想要更多的東西一樣:

if(op == '+') 
{ 
    double output = sum(X,Y); 
    System.out.print("Output = " + output); 
} 
+1

所以我把雙頭輸出= SUM(X,Y); ?在「if語句」中 當我這樣做時運行這個: X:5 Y:5 輸入操作:+ 並且不執行該功能。 對不起,不理解這個概念.. –

+0

總之,是的:) –

+0

我看到了問題,如果刪除後的分號,雖然它仍然應該工作。我會更新我的回答 –