根据年龄 求年龄分段ID

人员表 A(age,name) 
年龄分段表 B(max,min,ageid) 
A表关联B表,获取对应的年龄分段ID。 
之前查了很多资料不知道怎么做,会了以后觉得好简单。现记录备忘。














转自:http://www.cnblogs.com/BlueBreeze/archive/2012/11/02/2751051.html

好的,我们来定义一个名为`Student`的类,满足您的需。首先,我们有六个性能变量,包括心理年龄、学号和三门功课的成绩。我们将定义三个构造函数以便于不同情况下的初始化,同时提供一些成员函数来操作这些变量,并加入年龄和成绩范围的限制。 ```java import java.util.ArrayList; public class Student { private int age; // 心理年龄 (16-30) private int id; // 学号 private int mathScore; // 数学成绩 (0-150) private int englishScore; // 英语成绩 (0-150) private int scienceScore; // 科学成绩 (0-150) private ArrayList<Integer> grades; // 存放所有科目成绩 // 构造函数 - 默认无参数 public Student() { this.age = 0; this.id = 0; grades = new ArrayList<>(); } // 构造函数 - 静态工厂方法,直接设置所有值 public static Student createStudent(int age, int id, int math, int english, int science) { if (!isValidAge(age)) throw new IllegalArgumentException("年龄不在范围内"); if (!isValidGrade(math) || !isValidGrade(english) || !isValidGrade(science)) throw new IllegalArgumentException("成绩不在范围内"); return new Student(age, id, math, english, science); } // 构造函数 - 分段赋值 public Student(int age, int id, int[] scores) { this(age, id); for (int score : scores) { if (!isValidGrade(score)) throw new IllegalArgumentException("成绩不在范围内"); grades.add(score); } } // 成员函数 - 设置和获取年龄 public void setAge(int age) { if (isValidAge(age)) this.age = age; else System.out.println("年龄无效"); } public int getAge() { return age; } // 成员函数 - 设置和获取成绩 public void setMathScore(int score) { if (isValidGrade(score)) mathScore = score; else System.out.println("数学成绩无效"); } public int getMathScore() { return mathScore; } // 类似英语和科学分数的getter和setter方法 // 成员函数 - 检查年龄和成绩是否有效 private boolean isValidAge(int age) { return age >= 16 && age <= 30; } private boolean isValidGrade(int grade) { return grade >= 0 && grade <= 150; } // 测试类方法 public static void main(String[] args) { try { Student student = Student.createStudent(20, 12345, 90, 85, 95); System.out.println("学生年龄:" + student.getAge()); System.out.println("数学成绩:" + student.getMathScore()); } catch (IllegalArgumentException e) { System.out.println(e.getMessage()); } } } ``` 在这个定义中,我们创建了三个构造函数,并确保了年龄和成绩的合理性。main函数展示了如何创建和访问Student对象的属性。请注意,为了简便起见,这里并未在每个成员函数中都检查年龄和成绩,但在实际项目中应该这样做。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值