我目前剛剛開始一個初學java類,遇到了我的代碼中的問題,我不知道如何解決。該計劃背後的想法是使用主要方法以外的3種方法來獲取員工人數,找出每位員工的錯過日期以及平均缺失日期。實際和正式爭論名單長度不同/發現:沒有參數
import java.util.Scanner;
public class Average
{
int daysAbsent = 0;
public static void main(String[] args)
{
int employees, daysAbsent, averageDays;
noOfEmp();
daysMissed();
avgDaysAbsent();
}
public static int noOfEmp()
{
int employees;
System.out.println("How many employees do you have? ");
Scanner keyboard = new Scanner(System.in);
employees = keyboard.nextInt();
return employees;
}
public static int daysMissed(int employees)
{
int daysAbsent, i;
Scanner keyboard = new Scanner(System.in);
for(i = 1; i == employees; i++)
{
System.out.println("How many days was Employee #" + i + " absent?");
daysAbsent = keyboard.nextInt();
}
return daysAbsent;
}
public static float avgDaysAbsent(int employees, int daysAbsent)
{
float averageDays;
averageDays = (daysAbsent/employees);
System.out.println("Your employees averaged " + averageDays + " days absent");
return averageDays;
}
}
當我嘗試編譯代碼時,我收到包含daysMissed()的行的錯誤;和avgDaysAbsent()的行;在方法不能應用於給定類型,沒有找到參數,實際和形式參數列表長度不同的情況下有錯誤。任何幫助,將不勝感激。
您的代碼還有其他一些問題。你所有的方法都會返回值,但是當它們在'main'中被調用時,它會忽略返回值。你的'for'循環被破壞;與'我==僱員'循環將運行,當且僅當有一個員工。如果它有效,你會爲每個員工讀一個int,把他們扔掉,保留最後一個。你還可以通過'System.in'創建多個'Scanner'。我不確定這是一個錯誤還是一個不好的習慣。 –