在我的面向對象的編程課程中,我有一項任務,它要求我開發一個java代碼,用於在使用來自a.txt的信息時打印假公司的工資信息。 txt文件。我能夠打印出員工的姓名和所有內容,但是我在理解如何獲得平均薪水方面遇到了一些麻煩,我已經開始採用這種方法,並且在代碼如下。任何幫助,將不勝感激。當從.txt文件獲取信息時,發現平均值和總數
Employee類:
public class Employee {
private String firstName;
private String lastName;
private String rank;
private double salary;
public Employee(String firstName, String lastName, String rank, double salary) {
super();
this.firstName = firstName;
this.lastName = lastName;
this.rank = rank;
this.salary = salary;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getRank() {
return rank;
}
public void setRank(String rank) {
this.rank = rank;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
}
和
prog5類:
import java.util.*;
import java.io.*;
public class Prog5 {
public static void main(String[] args) {
String firstName = null;
String lastName = null;
String rank = null;
double salary = 0.0;
Scanner inFile = null;
Employee[] arr = new Employee[99];
int num = 0;
try {
inFile = new Scanner(new File ("c:\\Users\\admin\\workspace\\Shumaker5\\src\\employees.txt"));
}
catch(FileNotFoundException e) {
System.err.println(" File not found");
System.exit(1);
}
//read file
while(inFile.hasNext()) {
try {
firstName = inFile.next();
lastName = inFile.next();
rank = inFile.next();
salary = inFile.nextDouble();
}
catch(InputMismatchException e) {
System.err.println("File format error");
System.exit(1);
}
Employee emp = new Employee(firstName, lastName, rank, salary);
arr[num] = emp;
num++;
/**
* method to calculate average
* @param temperatures
* @param counter
* @return
*/
/** public static double average(double[] salary, int num)
{
double sum = 0;
for(int t = 0; t < num; t++)
{
sum += salary[t];
}
return (double) sum/num;
} */
System.out.println(emp);
}
System.out.println();
System.out.println("Wayne Industries");
System.out.println();
System.out.println("Number of Employees: " + num);
System.out.println("Average Salary: ");
System.out.println("Annual Total: ");
System.out.println();
System.out.printf("%-15s %-15s %-6s %-8s \n", "Last Name", "First Name", "Rank", "Salary");
System.out.println();
for(int x = 0; x < num; x++) {
System.out.printf("%-15s %-15s %-6s %-8.2f\n", arr[x].getLastName(),
arr[x].getFirstName(), arr[x].getRank(), arr[x].getSalary());
}
inFile.close();
}
}
您能指出哪裏有問題嗎?當你有一個具體的問題,你應該避免只是把你所有的代碼... – Maljam
我說問題領域被註釋掉了。它在編類 – theshu