zoukankan      html  css  js  c++  java
  • 【笔记】Eclipse and Java for Total Beginners—014

    Lesson 14 – Finish checkOut Method

    • Write getBooksForPerson method
    • Introduce for each loop
    • Introduce logical ‘and’ operator &&
    • NullPointerException errors
    • Complete checkOut Method

    1 package org.totalbeginner.tutorial;
    2
    3  import java.util.ArrayList;
    4
    5  import org.totoalbeginner.tutorial.Person;
    6
    7  public class MyLibrary {
    8
    9 String name;
    10 public String getName() {
    11 return name;
    12 }
    13
    14 public ArrayList<Person> getPeople() {
    15 return people;
    16 }
    17
    18 public ArrayList<Book> getBooks() {
    19 return books;
    20 }
    21
    22 ArrayList<Person> people;
    23 ArrayList<Book> books;
    24
    25 public MyLibrary(String name) {
    26 this.name = name;
    27 books = new ArrayList<Book>();
    28 people = new ArrayList<Person>();
    29
    30 }
    31
    32 public void addBook(Book b1) {
    33 this.books.add(b1);
    34
    35 }
    36
    37 public void removeBook(Book b1) {
    38 this.books.remove(b1);
    39
    40 }
    41
    42 public void addPerson(Person p1){
    43 this.people.add(p1);
    44 }
    45
    46 public void removePerson(Person p1){
    47 this.people.remove(p1);
    48 }
    49
    50 public boolean checkOut(Book b1, Person p1) {
    51 int booksOut = this.getBooksForPerson(p1).size();
    52 if ((b1.getPerson() == null) &&
    53 (booksOut < p1.getMaximumBooks())) {
    54 b1.setPerson(p1);
    55 return true;
    56 }
    57 else {
    58 return false;
    59 }
    60 }
    61
    62 public boolean checkIn(Book b1) {
    63 if (b1.getPerson() != null) {
    64 b1.setPerson(null);
    65 return true;
    66 }
    67 else {
    68 return false;
    69 }
    70 }
    71
    72 public ArrayList<Book> getBooksForPerson(Person p1) {
    73 ArrayList<Book> result = new ArrayList<Book>();
    74 for (Book aBook : this.getBooks()) {
    75 if (aBook.getPerson() != null &&
    76 (aBook.getPerson().getName().equals(p1.getName()))) {
    77 result.add(aBook);
    78 }
    79
    80 }
    81 return result;
    82 }
    83 }

  • 相关阅读:
    Vue.js——60分钟组件快速入门(下篇)三
    ASP.NET Core 中的 ORM 之 Dapper
    .Net Core中Dapper的使用详解
    .NetCore与Vue
    Vue 导入文件import、路径@和.的区别
    Git常见命令
    JVM垃圾回收补充知识点
    Java虚拟机垃圾回收(三): 7种垃圾收集器(转载)
    Java虚拟机垃圾回收(二) :垃圾回收算法(转载)
    Java虚拟机垃圾回收:基础点(转载)
  • 原文地址:https://www.cnblogs.com/halflife/p/2079452.html
Copyright © 2011-2022 走看看