发布网友 发布时间:2024-10-23 21:27
共2个回答
热心网友 时间:2024-10-27 15:15
public class EmployeeManager
{
// 定义私有变量 的Employee数组(Employee是你定义的其它类)用来存放Employee对象引用
private Employee[] employee = new Employee[5];
public void inputEmployee()
{
//循环执行以下代码5次,完成输入id,name,birthday,salary参数验证输入并生成对象并把对象的引用放入employee[]中
for(int i = 0; i < 5; i++)
{
//打开一个参数输入框可以输入下面几个参数 ,返回全部参数字符串使用,分隔
String mes = JOptionPane.showInputDialog("id,name,birthday(yyyy-mm-dd),salary");
// 按,打散字符串 给数组 strMegs;
String[] strMegs = mes.split(",");
//如果参数不够四个 ,提示,结束本方法
if(strMegs.length != 4)
{
//弹出窗口提示信息
JOptionPane.showMessageDialog(null, "请输入正确的格式");
return;
}
//如果 第一个参数也就是id为空,或不是数字(使用了正则表达式判断)
if("".equals(strMegs[0]) || !strMegs[0].matches("\\d*"))
{
// 提示并结束本方法
JOptionPane.showMessageDialog(null, "id请输入正确的格式");
return;
}
//如果第二个参为空(这里拿"".equals(OBJ)保正不出现OBJ空指针异常,是个好习惯啊)
if("".equals(strMegs[1]))
{
JOptionPane.showMessageDialog(null, "name请输入正确的格式");
return;
}
// birthday参数为空 或不是正则表达式匹配"数字四位数-数字2位-数字2位"的格式 就提示,退出
if("".equals(strMegs[2]) || !strMegs[2].matches("\\d{4}-\\d{2}-\\d{2}"))
{
JOptionPane.showMessageDialog(null, "birthday请输入正确的格式");
return;
}
// salary为空提示退出
if("".equals(strMegs[3]))
{
JOptionPane.showMessageDialog(null, "salary请输入正确的格式");
return;
}
try
{
// 解析salary参数 为Double格式。只是尝试 如果出错就是格式错误招待catch异常代码
Double.parseDouble(strMegs[3]);
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null, "salary请输入正确的格式");
return;
}
//调用了Employee 对象的有参构造函数,实例化了Employee对象,并把对象引用赋值给e
Employee e = new Employee(Integer.parseInt(strMegs[0]), strMegs[1], Date.valueOf(strMegs[2]),
Double.parseDouble(strMegs[3]));
//把Employee类型实例化对象的e引用放入 Employee对象引用数组中
employee[i] = e;
}
}
}
热心网友 时间:2024-10-27 15:12
// 定义私有变量 的Employee数组(Employee是你定义的其它类)用来存放Employee对象引用
private Employee[] employee = new Employee[5];
public void inputEmployee()
{
//循环执行以下代码5次,完成输入id,name,birthday,salary参数验证输入并生成对象并把对象的引用放入employee[]中
for(int i = 0; i < 5; i++)
{
//打开一个参数输入框可以输入下面几个参数 ,返回全部参数字符串使用,分隔
String mes = JOptionPane.showInputDialog("id,name,birthday(yyyy-mm-dd),salary");
// 按,打散字符串 给数组 strMegs;
String[] strMegs = mes.split(",");
//如果参数不够四个 ,提示,结束本方法
if(strMegs.length != 4)
{
//弹出窗口提示信息
JOptionPane.showMessageDialog(null, "请输入正确的格式");
return;
}
//如果 第一个参数也就是id为空,或不是数字(使用了正则表达式判断)
if("".equals(strMegs[0]) || !strMegs[0].matches("\\d*"))
{
// 提示并结束本方法
JOptionPane.showMessageDialog(null, "id请输入正确的格式");
return;
}
//如果第二个参为空(这里拿"".equals(OBJ)保正不出现OBJ空指针异常,是个好习惯啊)
if("".equals(strMegs[1]))
{
JOptionPane.showMessageDialog(null, "name请输入正确的格式");
return;
}
// birthday参数为空 或不是正则表达式匹配"数字四位数-数字2位-数字2位"的格式 就提示,退出
if("".equals(strMegs[2]) || !strMegs[2].matches("\\d{4}-\\d{2}-\\d{2}"))
{
JOptionPane.showMessageDialog(null, "birthday请输入正确的格式");
return;
}
// salary为空提示退出
if("".equals(strMegs[3]))