java基础:类、对象和数组的使用
定义一个学生类用来存储学生的信息(包括:学号,姓名,英语成绩、高数成绩、体育成绩),在main方法中定义一个数组存储5名学生的信息。
要求:
(1)按名字查询并输出某位同学成绩,要求能够实现部分匹配的查找,例如:希望查找John, 可查找到所有名字包含John 的人,例如: John Brown, John Smith都能得到(可以使用字符串类String的contains方法,来判断某个字符串中是否包含某个子串)。
(2)查询并输出所有科目不及格的人数及名单。。
输出格式为:
英语成绩不及格的有:张三、李四、王五,总共有3人
高数成绩不及格的有:张三,总共有1人
体育成绩不及格的有:张三丰、张无忌,总共有2人提示:。
(1)定义的学生类:包括属性、属性的getter、setter 方法。。
(2)类中其他方法可自由发挥,比如打印学生信息的方法(如print(或toString())
(3)自定义包含main方法的类,类中定义2个方法,分别用来实现按名字查询成绩、查找不及格人数并打印不及格名单的功能。
package job1;
public class student {
private String sno;
private String name;
private int english;
private int math;
private int sports;
public student(String sno,String name,int english,int math,int sports) {
this.sno=sno;
this.name=name;
this.english=english;
this.math=math;
this.sports=sports;
}
public String getSno() {
return sno;
}
public void setSno(String sno) {
this.sno = sno;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getEnglish() {
return english;
}
public void setEnglish(int english) {
this.english = english;
}
public int getMath() {
return math;
}
public void setMath(int math) {
this.math = math;
}
public int getSports() {
return sports;
}
public void setSports(int sports) {
this.sports = sports;
}
public static void print(student student) {
System.out.println("学号:"+student.sno+" "+"姓名:"+student.name+" "+"英语成绩:"+student.english+" "+"高数成绩:"+
student.math+" "+"体育成绩:"+student.sports);
}
}
package job1;
import java.util.ArrayList;
public class test {
static ArrayList<student> students=new ArrayList<>();
public static void search(String str){
//通过关键字模糊查询
System.out.println("搜索名字中带有"+str+"的学生信息如下:");
for(int i=0;i<students.size();i++){
if (students.get(i).getName().contains(str)) {
student.print(students.get(i));
}
}
}
public static void fail() {
int sum1=0;
int sum2=0;
int sum3=0;
System.out.print("英语成绩不及格的有:");
for (int i = 0; i < students.size(); i++) {
if(students.get(i).getEnglish()<60){
System.out.print(students.get(i).getName()+"\t");
sum1++;
}
}
System.out.println("总共"+sum1+"人");
System.out.print("数学成绩不及格的有:");
for (int i = 0; i < students.size(); i++) {
if(students.get(i).getMath()<60){
System.out.print(students.get(i).getName()+"\t");
sum2++;
}
}
System.out.println("总共"+sum2+"人");
System.out.print("体育成绩不及格的有:");
for (int i = 0; i < students.size(); i++) {
if(students.get(i).getMath()<60){
System.out.print(students.get(i).getName()+"\t");
sum3++;
}
}
System.out.println("总共"+sum3+"人");
}
public static void main(String[] args) {
student student1=new student("12","周星星",12,12,12);
student student2=new student("13","John Brown",62,12,12);
student student3=new student("14","John Smith",62,12,12);
student student4=new student("15","刘星星",12,12,12);
student student5=new student("16","李星星",12,12,12);
students.add(student1);
students.add(student2);
students.add(student3);
students.add(student4);
students.add(student5);
fail();
search("J");
}
}
运行截图: