Shadowrayyy 2021-10-06 21:20 采纳率: 71.4%
浏览 135
已结题

Java 关于method的基础问题

添加/更新 AddStudent 方法,以便:
接受两个代表学生姓名和年龄的输入值
如果姓名和/或年龄无效,则返回 false
如果输入名称已存在于数组列表学生中,则返回 false。
提示:‘使用合适的循环结构’
如果学生姓名和年龄有效且姓名不存在于 ArrayList 学生中,则:
创建类 Student 的新实例
将输入参数 name 和 age 传递给类 Student 的构造函数
将新实例添加到 ArrayList 学生
添加/更新 AddFaculty 方法,以便:
接受一个输入值表示院系名称
如果名称无效,则返回 false
如果输入名称已存在于数组列表中,则返回 false。
提示:‘使用合适的循环结构’
如果学院名称有效并且该名称在 ArrayList 学院中不存在,则:
创建类 Faculty 的新实例
将输入参数名称传递给 Faculty 类的构造函数
将新实例添加到 ArrayList 系

img

img

img

img

img

img

  • 写回答

1条回答 默认 最新

  • 大鹏cool Java领域优质创作者 2021-10-06 22:07
    关注
    @Data
    @AllArgsConstructor
    public class Faculty {
    
        private String facultyName;
    
    }
    
    @Data
    @AllArgsConstructor
    public class Student {
    
        private String name;
    
        private Integer age;
    }
    
    @Data
    public class Enrollment {
    
        private Student student;
    
        private Faculty faculty;
    
    }
    
    @Data
    public class University {
    
        private String universityName;
    
        private Integer worldRank;
    
        private List<Faculty> faculties = new ArrayList<>();
    
        private List<Student> students = new ArrayList<>();
    
        private List<Enrollment> enrollments = new ArrayList<>();
    
    
        public boolean addStudent(String name, Integer age) {
            if (name == null || name.length() < 2 || age == null || age < 15 || age > 95) {
                return false;
            }
            if (students.stream().map(Student::getName).anyMatch(item -> item.equals(name))) {
                return false;
            }
            students.add(new Student(name, age));
            return true;
        }
    
        public boolean addFaculty(String facultyName) {
            if (facultyName == null || facultyName.length() < 3) {
                return false;
            }
            if (faculties.stream().map(Faculty::getFacultyName).anyMatch(item -> item.equals(facultyName))) {
                return false;
            }
            faculties.add(new Faculty(facultyName));
            return true;
        }
    
    }
    

    示例中使用了 lombok 注解,编译时会自动生成 get/set/toString 方法以及构造方法,也可以手工编写这些方法。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月13日
  • 已采纳回答 10月13日
  • 修改了问题 10月6日
  • 修改了问题 10月6日
  • 展开全部

悬赏问题

  • ¥15 如何在node.js中或者java中给wav格式的音频编码成sil格式呢
  • ¥15 不小心不正规的开发公司导致不给我们y码,
  • ¥15 我的代码无法在vc++中运行呀,错误很多
  • ¥50 求一个win系统下运行的可自动抓取arm64架构deb安装包和其依赖包的软件。
  • ¥60 fail to initialize keyboard hotkeys through kernel.0000000000
  • ¥30 ppOCRLabel导出识别结果失败
  • ¥15 Centos7 / PETGEM
  • ¥15 csmar数据进行spss描述性统计分析
  • ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题