基本的Java编码和编写Java方法

img

1.对上表中描述的五个实例变量进行编码。

img

  1. 代码设置器和获取器(修改器和访问器)用于:

大学名称
世界排名
代码 getter 仅用于:

院系
学生们
注册
如果提供的值有效并设置为实例变量,则 setter 必须返回 true; 否则为假。

img

  1. 为 (universityName,worldRank) 实例变量编写 2 参数构造函数。 实例变量faculties、students 和enrollment 必须以空的ArrayLists 启动。

img

  1. 编写一个 toString 方法来显示所有实例变量的值。

img

  1. 编写一个名为“addStudent”的布尔方法,该方法接受一个字符串作为输入,表示学生姓名。 如果输入有效(姓名长度>=2),则该方法应返回 true 并将其添加到 ArrayList “students”。 如果输入无效,则该方法必须返回 false。

img

  1. 编写一个名为“addFaculty”的布尔方法,该方法将一个字符串作为输入,表示一个教师姓名。 如果输入有效(教员长度>=3),该方法应返回真值,并将其添加到 ArrayList“教员”中。 如果输入无效,则该方法必须返回 false。

img

  1. 编写一个名为“addEnrollment”的布尔方法,该方法采用两个字符串作为输入来表示学生姓名和教师姓名。 如果输入字符串‘name’和‘faculty’分别存在于‘students’和‘faculties’数组列表中,则该方法应使用上述格式将它们添加到‘enrollment’ArrayList并返回true; 否则,该方法必须返回 false。

img

  1. 编写一个名为 countStudentsPerFaculty 的方法,该方法接受一个字符串作为输入,表示教师姓名,并返回一个整数值,表示该教师的学生人数。

img


import java.util.ArrayList;
import java.util.List;

public class Test {

    private String universityName;
    private int worldRank;
    private List<String> faculties=new ArrayList<>();
    private List<String> students=new ArrayList<>();
    private List<String> enrollment=new ArrayList<>();

    public Test(String universityName, int worldRank) {
        this.universityName = universityName;
        this.worldRank = worldRank;
    }

    public String getUniversityName() {
        return universityName;
    }

    public boolean setUniversityName(String universityName) {
        if (universityName.length()>=3){
            this.universityName = universityName;
            return true;
        }
        return false;
    }

    public int getWorldRank() {
        return worldRank;
    }

    public boolean setWorldRank(int worldRank) {
        if(worldRank>0){
            this.worldRank = worldRank;
            return true;
        }
        return false;
    }

    public List<String> getFaculties() {
        return faculties;
    }

    public List<String> getStudents() {
        return students;
    }


    public List<String> getEnrollment() {
        return enrollment;
    }


    @Override
    public String toString() {
        String str="Test{" +
                "universityName='" + universityName + '\'' +
                ", worldRank=" + worldRank +
                ", faculties=[";
        for (String faculty : faculties) {
            str=str+faculty+",";
        }
        str=str+"], students=[";
        for (String student : students) {
            str=str+student+",";
        }
        str=str+"], enrollment=[";
        for (String e : enrollment) {
            str=str+e+",";
        }
        str=str+"]}";
        return  str;
    }

    public boolean addStudents(String name) {
        if(name.length()>=2){
            students.add(name);
            return true;
        }
        return false;
    }
    public boolean addFaculty(String name) {
        if(name.length()>=3){
            faculties.add(name);
            return true;
        }
        return false;
    }
    public boolean addEnrollment(String sName,String tName) {
        if(students.contains(sName) && faculties.contains(tName)){
            enrollment.add(sName+"|"+tName);
            return true;
        }
        return false;
    }
    public int countStudentsPerFaculty(String name) {
        int count=0;
        for (String s : enrollment) {
            String t=s.substring(s.lastIndexOf("|")+1);
            if(t.equals(name)){
                count++;
            }
        }
        return count;
    }



}

看起来,不像是基本的编写了。

难度不大,我们可以深入交流下。


package com.csdn;

import java.util.ArrayList;

public class University {

    // 大学名称
    private String universityName;
    // 世界排名
    private int worldRank;
    // 院系
    private ArrayList<String> faculties = new ArrayList<>();
    // 学生们
    private ArrayList<String> students = new ArrayList<>();
    // 注册
    private ArrayList<String> enrollment = new ArrayList<>();

    public String getUniversityName() {
        return universityName;
    }

    public boolean setUniversityName(String universityName) {
        // 字符串长度大于等于3
        if (universityName.length() >= 3) {
            this.universityName = universityName;
            return true;
        }
        return false;
    }

    public int getWorldRank() {
        return worldRank;
    }

    public boolean setWorldRank(int worldRank) {
        // 正非零整数
        if (worldRank > 0) {
            this.worldRank = worldRank;
            return true;
        }
        return false;
    }

    // 构造函数2
    public University(String universityName, int worldRank) {
        super();
        this.universityName = universityName;
        this.worldRank = worldRank;
    }

    // toString
    @Override
    public String toString() {
        return "University [universityName=" + universityName + ", worldRank=" + worldRank + ", faculties=" + faculties
                + ", students=" + students + ", enrollment=" + enrollment + "]";
    }

    // 编写一个名为“addStudent”的布尔方法,该方法接受一个字符串作为输入,表示学生姓名。 如果输入有效(姓名长度>=2),则该方法应返回 true
    // 并将其添加到 ArrayList “students”。 如果输入无效,则该方法必须返回 false。
    public boolean addStudent(String sutdent) {
        if (sutdent.length() > 2) {
            students.add(sutdent);
            return true;
        }
        return false;
    }

    // 编写一个名为“addFaculty”的布尔方法,该方法将一个字符串作为输入,表示一个教师姓名。
    // 如果输入有效(教员长度>=3),该方法应返回真值,并将其添加到 ArrayList“教员”中。 如果输入无效,则该方法必须返回 false。
    public boolean addFaculty(String faculty) {
        if (faculty.length() >= 3) {
            faculties.add(faculty);
        }
        return false;
    }

    // 编写一个名为“addEnrollment”的布尔方法,该方法采用两个字符串作为输入来表示学生姓名和教师姓名。
    // 如果输入字符串‘name’和‘faculty’分别存在于‘students’和‘faculties’数组列表中,则该方法应使用上述格式将它们添加到‘enrollment’ArrayList并返回true;
    // 否则,该方法必须返回 false。
    public boolean addEnrollment(String studentName, String teacherName) {
        if (students.contains(studentName) && faculties.contains(teacherName)) {
            enrollment.add(studentName + "|" + teacherName);
            return true;
        }

        return false;
    }

    // 编写一个名为 countStudentsPerFaculty 的方法,该方法接受一个字符串作为输入,表示教师姓名,并返回一个整数值,表示该教师的学生人数。
    public int countStudentsPerFaculty(String teacherName) {
        int count = 0;
        for (String item : enrollment) {
            if (item.split("|")[1].equals(teacherName)) {
                ++count;
            }
        }
        return count;
    }

}