2013-11-26 43 views
0

當我嘗試計算fedtax時出現錯誤。但它說它找不到符號。我嘗試過不同的事情,但我仍然得到同樣的錯誤。任何幫助,將不勝感激。在Java中的方法中找不到符號

public class calculatetax { 
    public static void main(String[ ] args) { 
    Scanner kb = new Scanner(System.in); 
     int employeehr = 0; 
     int ratehr = 0; 
     String stateresidence = ""; 
     String maritalstatus = ""; 

     System.out.println(" Employee Hours pls ") ; 
     employeehr = kb.nextInt(); 

     System.out.println(" Hourly Rate ") ; 
     ratehr = kb.nextInt(); 

     System.out.println(" State of residence") ; 
     stateresidence = kb.nextLine(); 

     System.out.println("Marital Status") ; 
     maritalstatus = kb.nextLine(); 

    int wages = calculatewages(employeehr,ratehr); 
    calculatefedax(wages,maritalstatus); 
    } 

    public static int calculatewages(int n1, int n2) { 
    int wages = n1 * n2; 
    System.out.println("Return Wages" + wages); 
    return wages; 
    }  


    public static double calculatefedtax(double fedtax, str maritalstatus) {  
    if(maritalstatus.equals("marry")) 
    { 
    fedtax = fedtax * .20; 
    } 
    else if (maritalstatus.equals("single")) 
    { 
    fedtax = fedtax * .25; 
    } 
    else 
    { 
    fedtax = fedtax * .22; 
    } 
    return fedtax; 

    }  
} 
+0

'str maritalstatus'是一個錯字嗎? – John3136

+0

它必須是錯字;代碼中的其他地方使用適當的類String。 – rgettman

+0

什麼是「str」?不應該是字符串婚姻狀態? – user2573153

回答

0

你寫str而不是String。您還忘記導入掃描儀。最後你找出fedtax,但沒有采取任何措施。

calculatefedax(wages,maritalstatus); 

這應該是這樣的

String fedtax = calculatefedax(wages,maritalstatus); 

固定碼

import java.util.Scanner; 

public class calculatetax { 
    public static void main(String[] args) { 

     Scanner kb = new Scanner(System.in); 
     int employeehr = 0; 
     int ratehr = 0; 
     String stateresidence = ""; 
     String maritalstatus = ""; 

     System.out.println(" Employee Hours pls "); 
     employeehr = kb.nextInt(); 

     System.out.println(" Hourly Rate "); 
     ratehr = kb.nextInt(); 

     System.out.println(" State of residence"); 
     stateresidence = kb.nextLine(); 

     System.out.println("Marital Status"); 
     maritalstatus = kb.nextLine(); 

     int wages = calculatewages(employeehr, ratehr); 
     double fedtax = calculatefedtax(wages, maritalstatus); 
     System.out.println("Fedtax:" + fedtax); 
    } 

    public static int calculatewages(int n1, int n2) { 

     int wages = n1 * n2; 
     System.out.println("Return Wages" + wages); 
     return wages; 
    } 

    public static double calculatefedtax(double fedtax, String maritalstatus) { 

     if (maritalstatus.equals("marry")) { 
      fedtax = fedtax * .20; 
     } else if (maritalstatus.equals("single")) { 
      fedtax = fedtax * .25; 
     } else { 
      fedtax = fedtax * .22; 
     } 
     return fedtax; 

    } 

} 

編輯:由於吉榮Vannevel指出,我完全錯過你忘了T當你做

calculatefedax(wages,maritalstatus); 
+0

謝謝你的幫助! – user2984143

1
int wages 
String maritalstatus 
calculatefedax(wages,maritalstatus) 

calculatefedtax(double fedtax, str maritalstatus) 

你看這個問題?

對於int + String參數,您沒有合適的方法。而str應該是String
哦,你在方法名稱中出現錯字。這就是爲什麼它告訴你它無法找到該線上的符號。

+0

我試着calculatefedax(int工資,String婚姻狀態),但我仍然得到一個錯誤? calculatetax.java:30:錯誤:';'預計 calculatefedax(int工資,字符串婚姻狀況) – user2984143

+0

使用'calculatefedtax'。注意「稅」中的「t」。 –