package org.lanqiao.bean; /** * 员工考勤类 */ public class Account { private String name;//员工姓名 private String begintime;//员工上班时间 private String endtime;//员工下班时间 public Account(String name, String begintime, String endtime) { this.name = name; this.begintime = begintime; this.endtime = endtime; } public Account() {} public String getName() { return name; } public void setName(String name) { this.name = name; } public String getBegintime() { return begintime; } public void setBegintime(String begintime) { this.begintime = begintime; } public String getEndtime() { return endtime; } // 请补全以下方法,要求下班时间不能大于20:00:00 // 时间格式如:2023-03-08 18:19:20 // 当参数在规定范围外时,不做任何动作 public void setEndtime(String endtime) { String[] s1 = endtime.split(" "); String time = "20:00:00"; // 缺失代码:
时间: 2024-03-18 08:42:11 浏览: 86
```java
public void setEndtime(String endtime) {
String[] s1 = endtime.split(" ");
String time = "20:00:00";
String[] s2 = s1[1].split(":");
String[] s3 = time.split(":");
// 将字符串转换为整数
int hour1 = Integer.parseInt(s2[0]);
int minute1 = Integer.parseInt(s2[1]);
int second1 = Integer.parseInt(s2[2]);
int hour2 = Integer.parseInt(s3[0]);
int minute2 = Integer.parseInt(s3[1]);
int second2 = Integer.parseInt(s3[2]);
// 判断下班时间是否大于20:00:00
if (hour1 < hour2 || (hour1 == hour2 && minute1 < minute2) || (hour1 == hour2 && minute1 == minute2 && second1 <= second2)) {
this.endtime = endtime;
}
}
```
在方法中,首先将传入的endtime按空格分割成日期和时间两部分(假定日期部分没有问题),然后将规定的下班时间"20:00:00"也按冒号分割成小时、分钟、秒三部分,再将endtime的时间部分也按冒号分割成小时、分钟、秒三部分。接着,将这些整数进行比较,如果endtime的时间部分小于等于规定下班时间,则将endtime赋值给成员变量this.endtime,否则不做任何操作。
阅读全文