Создан метод, который возвращает истинное значение для объекта 5+ лет - PullRequest
0 голосов
/ 26 января 2020

Я хочу создать метод, который возвращает логическое значение. Должно возвращаться значение true, если продажа старше 5 лет или старше, и false, если продажа менее 5 лет.

Я предпринял попытку, но, похоже, не смог заставить ее работать. Если кто-то может придумать более эффективный способ выполнить это, я открыт для другого направления.

Я попробовал следующее, но метод продолжает выдавать ошибку независимо от того, что я изменяю. Google тоже не помог, так как метод так определен c.

метод называется isSaleOld () (Go в нижней части кода)

Спасибо за любую помощь заранее. Код ниже для всего проекта.

public class Sale
{
// instance variables
private String company;
private String yearBought;
private int saleValue;
private Seller seller;

public Sale(String aCompany, String aYear, int aValue, 
Seller theSeller)
{
  this.company = aCompany;
  this.yearBought = aYear;
  this.saleValue = aValue;
  this.seller = theSeller;
}

public void setSellersName(String aName)
{
  this.seller.setName(aName);
}

public void setSaleValue(int aValue)
{
  this.saleValue = aValue;
}

public void setyearBought(String aYear)
{
  this.yearBought = aYear;
}

public void setCompany(String aCompany)
{
  this.company = aCompany;
}

public int getSaleValue()
{
  return this.saleValue;
}

public boolean isApprovalRequired()
{
  return this.getSaleValue() >=10000;
}

public String getYearBought()
{
  return this.yearBought;
}

public void isSaleOld(String[] args)
{
  yearBought = getYearBought("2020");

  boolean after = yearBought.after(yearBought);
}
}   

1 Ответ

0 голосов
/ 26 января 2020
import java.time.LocalDateTime;

public class Sale {

    private int yearBought;

    public void sale(int year) {
        setYearBought(year);
    }

    private int getYearBought() {
        return this.yearBought;
    }

    private void setYearBought(int year) {
        this.yearBought = year;
    }

    public boolean isSaleOld() {
        int now = LocalDateTime.now().getYear();
        int yearBought = getYearBought();
        if (now - yearBought > 5) {
            System.out.println("Yes, older than 5 years");
            return true;
        }
        System.out.println("No, less than 5 years old");
        return false;
    }

    public static void main(String[] args) {
        Sale sale = new Sale();
        Sale sale2 = new Sale();

        sale.sale(2010);
        sale2.sale(2020);

        sale.isSaleOld();
        sale2.isSaleOld();

    }
...