Назад. Любой оператор sugReturn печатает обратную строку и значение int по умолчанию, равное 5. Я хочу, чтобы строка печаталась только для printgestions?

#java #oop #return

#java #ооп #Возврат

Вопрос:

Мы изучаем ооп в моем классе программирования, и это было наше первое задание для него, проблема, с которой я сталкиваюсь, заключается в том, что он должен возвращать только «хорошо», но я получаю обратно «хорошо 5». Я все еще новичок во всем этом и хотел бы получить несколько предложений или советов о том, как это исправить.

 public class Main{
 public static void main(String[] args){
  Dog dog = new Dog();
  System.out.println(dog.checkWeight());
 }
}
  

// Два отдельных файла main.java и Dog.java

 public class Dog{
 String name = "unknown";
 String breed = "mutt";
 int weight = 5;
 
 public int checkWeight(){
  if (weight <2){
   System.out.println("under-weight");
  }else if (weight > 10){
   System.out.println("over-weight");
  }else{
   System.out.println("good");
  }return weight;
 }
}
  

Ответ №1:

Измените определение checkWeight следующим образом:

 public String checkWeight() {
    String health = "";
    if (weight < 2) {
        health = "under-weight";
    } else if (weight > 10) {
        health = "over-weight";
    } else {
        health = "good";
    }
    return health;
}
  

Ответ №2:

Изменить

 System.out.println(dog.checkWeight());
  

Для

 dog.checkWeight();
  

В настоящее время метод возвращает 5 , и вы его печатаете.

Комментарии:

1. Моему профессору требуется System.out.println… все это делается на repl.it