Java从与该类相同的类的变量获取数据

时间:2018-07-04 02:22:43

标签: java

我正在尝试使用我的getter方法从preRequisite获取数据。当我这样做时,它会调用toString方法并打印其他所有内容。我试图仅从preRequisite获取数据,而无需调用toString,以便可以将数据与用户的输入进行比较。谢谢您的帮助。

public class Course{
   private int units;
   private int number;
   private String name;
   private Course preRequisite;
   private int section;
   private Person instructor;

public Course preReq(){
      return this.preRequisite;
}

1 个答案:

答案 0 :(得分:1)

在您的代码中,preRequisite的类型为Course,但是您将其视为String中的result.preReq().equals("no_preReq")

针对您的评论:

  

有没有办法只在preReq对象中获取文本?

如果您要从preReq对象中寻找特定值,例如name,则可以为Course类提供一个吸气剂,因为name已经是{ {1}}-

String

然后您可以进行类似的比较:

public String getCourseName() {
  return this.name;
}

当然,这假定当课程具有 no 先决条件时,您已为其分配了if (result.preReq().getCourseName().equals("no_preReq")) { ... } 对象,其中Course

一种完全避免这种比较的方法是将name = "no_preReq";保留为preRequisite,而没有任何先决条件。在这种情况下,您可以执行空检查。

如果您正在寻找null提供的信息,那么您将需要覆盖Course类的.toString()方法,以仅返回{{ 1}},例如toString()