我的return语句不使用用户插入的数据

时间:2019-11-07 14:50:48

标签: java bluej

我有第一个方法,该方法应该返回参考实例变量的书名。效果很好,但是让我选择了插入的标题,而不是立即使用用户输入的标题,是否有办法让它返回标题,而无需我执行在下拉列表中选择标题的额外步骤?

我有第二种方法,应该通过找到(BookChapters)和(BookMark)之间的差异来返回其余章节,但是当我运行它时,它不会返回差异,就像第一种方法,它使我选择了下拉列表中的其余章节。

这是一门入门编程课程,我尝试过查找有关返回数学语句的Java文档,但并没有取得太大的成就。

private String BookTitle;
private int BookChapters;
private int BookMark;
public int RemainingChapters;

//实例变量//

public Textbook()
{
    // initialise instance variables
    BookTitle = "Lord of the Flies";
    BookChapters = 3;
    BookMark = 0;  
}

//我的构造函数//

public String getTitle(String BookTitle)
{
    return BookTitle; 
}

///我的第一个返回书名的方法//

public int getRemainingChapters (int RemainingChapters)
{
    return RemainingChapters = BookChapters - BookMark;
}

///我的第二种方法返回剩余的章节//

https://imgur.com/a/mrnZBru

这张图片应该可以帮助我解释有关第一种方法的问题

1 个答案:

答案 0 :(得分:0)

public String getTitle() { 
    return BookTitle;  }

Getter不应使用参数,而应返回对象(类级别)变量。

也许您打算编写一个可以像这样实现的二传手:

public String getTitle(String BookTitle) {
    this.BookTitle = BookTitle;  }

this.BookTitle = BookTitle;可以解释为将对象BookTitle设置为功能参数BookTitle。

类似地,此功能应如下

public int getRemainingChapters ()
{
    return (BookChapters - BookMark);
}