2014-10-28 63 views
0

我正在創建一個多重函數過程,並且遇到了第一個函數的小問題。下面是代碼:函數樹問題

import java.util.Scanner; 

public class BradySkuzaLab8 
{ 

    public static void main(String[] args) 
    { 
     Scanner kb = new Scanner(System.in); 
     int functionchoose = 0; 
     int a = 0; 
     int b = 0; 
     int c = 0; 
     int Maxval = 0; 

     do 
     { 
     System.out.println("Which function would you like to run?"); 
     System.out.println("1) Max int funtion."); 
     //System.out.println("2) "); 
     //System.out.println("3) "); 
     //System.out.println("4) "); 
     //System.out.println("5) "); 
     //System.out.println("6) "); 
     //System.out.println("7) "); 
     System.out.println("8) Quit"); 
     functionchoose = kb.nextInt(); 

      if(functionchoose == 1) 
      { 
       System.out.println("Please input a: "); 
       a = kb.nextInt(); 
       System.out.println("Now b: "); 
       b = kb.nextInt(); 
       System.out.println("And c: "); 
       c = kb.nextInt(); 
       System.out.println(Maxval); 

      } 
     } 
     while(functionchoose != 8); 
     { 
     } 

    } 

public static int Maxval(int a, int b, int c) 
{ 
    int Maxval; 
    Maxval = Math.max(a, Math.max(b, c)); 

    return Maxval; 
} 
} 

我進入A,B,C後,我設置的功能選擇最大值,但它總是打印出0我。我想知道我在做什麼錯在這種情況下

回答

0

你有一個令人困惑的情況,你已經命名了一個變量和一個方法相同的東西。你需要做的是改變你的println線

System.out.println(Maxval(a,b,c)); 

但在現實中,這是一個壞主意,有一個變量,並使用相同的名稱的方法。我不確定你準備用變量Maxval做什麼,但是現在你不需要它,只需要刪除一行就可以刪除它。

int Maxval = 0; 
+0

謝謝你的幫助的人。這回答了我的問題。至於我在做什麼,我想我推翻了它,現在我想到它並沒有多大意義。 – OMNONOM999 2014-10-28 20:54:42