子任务1:将学生按学号排序输出。
子任务2:给所有学生年龄加1。
子任务3:在实现子任务2的基础上,统计大于20岁的学生人数。
//创建students类
class students{
private String id; //学号
private String name; //名字
private int age; //年龄
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public students() {}
public students(String id, String name, int age) {
super();
this.id = id;
this.name = name;
this.age = age;
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
students [] s = new students[5];
s[0] = new students("学号1","张三",20);
s[1] = new students("学号3","李四",18);
s[2] = new students("学号4","王五",19);
s[3] = new students("学号2","赵六",21);
s[4] = new students("学号5","陈七",19);
int count = 0;
for(int j = 0;j<s.length-1;j++) {
for(int k = j+1;k<s.length;k++) {
//compareTo用于两个相同数据类型的比较,如果指定的数与参数相等返回0,如果指定的数小于参数返回 -1,如果指定的数小于参数返回 -1
if(s[j].getId().compareTo(s[k].getId())>0) {
students t;
t = s[j];
s[j] = s[k];
s[k] = t;
}
}
}
for(int x = 0;x<s.length;x++) {
System.out.println("学生排序为:"+s[x].getId() +"姓名:"+s[x].getName()+"年龄:"+ s[x].getAge());
}
for(int i = 0;i<s.length;i++) {
s[i].setAge(s[i].getAge()+1); //给所有学生年龄加1
System.out.println("所有学生年龄加1:"+s[i].getId() +"姓名:"+s[i].getName()+"年龄:"+ s[i].getAge());
if(s[i].getAge() >20) {
count++; //统计大于20岁的学生人数
}
}
System.out.println("大于20岁的学生人数:"+count);
}
}
//结果
学生排序为:学号1姓名:张三年龄:20
学生排序为:学号2姓名:赵六年龄:21
学生排序为:学号3姓名:李四年龄:18
学生排序为:学号4姓名:王五年龄:19
学生排序为:学号5姓名:陈七年龄:19
所有学生年龄加1:学号1姓名:张三年龄:21
所有学生年龄加1:学号2姓名:赵六年龄:22
所有学生年龄加1:学号3姓名:李四年龄:19
所有学生年龄加1:学号4姓名:王五年龄:20
所有学生年龄加1:学号5姓名:陈七年龄:20
大于20岁的学生人数:2