java某公司现需要统计员工出勤次数,具体要求如下: 输入样例: Mark Tom Ivor Mark Ivor Mark Jack end 输入样例解释: 每行表示某天出勤的员工名单,以空格间隔。 end表示输入结束 输出样例: Mark 3 Ivor 2 Tom 1 Jack 1
时间: 2024-03-22 22:39:32 浏览: 160
Beg_Java_Solutions.rar_The Beginning_exercises solutions_java so
好的,以下是Java实现此问题的代码:
```java
import java.util.*;
public class EmployeeAttendance {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Map<String, Integer> employeeAttendance = new HashMap<>();
while (true) {
String[] attendanceList = input.nextLine().split(" ");
if (attendanceList[0].equals("end")) {
break;
}
for (String employee : attendanceList) {
if (employeeAttendance.containsKey(employee)) {
employeeAttendance.put(employee, employeeAttendance.get(employee) + 1);
} else {
employeeAttendance.put(employee, 1);
}
}
}
for (Map.Entry<String, Integer> entry : employeeAttendance.entrySet()) {
System.out.println(entry.getKey() + " " + entry.getValue());
}
}
}
```
在这个Java代码中,我们使用了一个HashMap对象employeeAttendance来存储每个员工的出勤次数。我们首先读取输入,然后对于每个员工,我们检查是否已经在Map中存在,如果存在,我们增加他们的出勤次数,如果不存在,我们将他们添加到Map中并设置他们的出勤次数为1。最后,我们遍历Map并打印每个员工的出勤次数。
阅读全文