У меня есть строка, которая устанавливается по умолчанию, когда входные данные находятся за пределами указанных значений, но он продолжает возвращать ноль вместо значения по умолчанию.какой код мне не хватает, чтобы иметь правильный вывод?
Я считаю, что мои целые и двойные значения используют значение по умолчанию правильно, но мои строки не.
// Это клип из моегопередний конец
import java.util.Scanner;
public class AnimalFrontEnd {
public static final int ARRAY_SIZE = 10;
Scanner keyboard = new Scanner(System.in) ;
public static void main(String[] args) {
boolean cont = true;
int input = 0;
int type = 0;
AnimalCollection collection = new AnimalCollection(ARRAY_SIZE);
Scanner keyboard = new Scanner(System.in) ;
String rName = "";
System.out.println("Welcome to the Cat and Dog Collection");
while(cont) {
System.out.println("1. Add a cat or dog \n2. Remove a cat or dog \n3. Quit \nEnter a selection");
input = Integer.parseInt(keyboard.nextLine());
switch(input) {
case 1:
System.out.println("Would you like to add \n1. A House Cat \n2. A Leopard \n3. A Domestic Dog \n4. A Wolf");
type = Integer.parseInt(keyboard.nextLine());
switch(type) {
case 1:
HouseCat kitty = getHCat();
collection.addAnimal(kitty);
break;
// Далее в моем переднем конце
private static HouseCat getHCat() {
String name;
double weight;
String mood;
String cType;
Scanner keyboard = new Scanner(System.in) ;
System.out.println("Enter the cat's name, weight, mood, and type");
name = keyboard.nextLine();
weight = Double.parseDouble(keyboard.nextLine());
mood = keyboard.nextLine();
cType = keyboard.nextLine();
return new HouseCat(name, weight, mood, cType);
}
// мой абстрактный класс
public abstract class Animal {
public String name;
public double weight;
Animal(){
this.name = "Cuddles";
this.weight = 0;
}
public Animal(String name, double weight) {
this.setName(name);
if(weight>0) {
this.setWeight(weight);
}
else {
System.out.println("Invalid weight");
}
}
public String getAName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void setWeight(double weight) {
this.weight = weight;
}
public String toString() {
return "Name: "+name+" Weight: "+weight;
}
}
// расширение животного
public class Cat extends Animal {
public String mood;
Cat(){
this.mood = "Sleepy";
}
public Cat(String name, double weight, String mood) {
super(name, weight);
if(mood.equalsIgnoreCase("sleepy")||mood.equalsIgnoreCase("playful")||mood.equalsIgnoreCase("hungry")) {
this.setMood(mood);
}
else {
System.out.println("Invalid mood");
}
}
public String getMood() {
return mood;
}
public void setMood(String mood) {
this.mood = mood;
}
public String toString() {
return super.toString()+" Mood: "+mood;
}
}
// класс, который происходит от Cat
public class HouseCat extends Cat {
public String cType;
HouseCat(){
this.cType = "Short Hair";
}
public HouseCat(String name, double weight, String mood, String cType) {
super(name, weight, mood);
if(cType.equalsIgnoreCase("Short Hair")||cType.equalsIgnoreCase("Bombay")||cType.equalsIgnoreCase("Ragdoll")||cType.equalsIgnoreCase("Sphinx")||cType.equalsIgnoreCase("Scottish Fold")) {
this.setCType(cType);
}
else {
System.out.println("Invalid type");
}
}
public String getCType(){
return cType;
}
public void setCType(String cType) {
this.cType = cType;
}
public String toString() {
return super.toString()+" Type: "+cType;
}
}
, который я ожидаю показать:
Welcome to the Cat and Dog Collection
1. Add a cat or dog
2. Remove a cat or dog
3. Quit
Enter a selection
1
Would you like to add
1. A House Cat
2. A Leopard
3. A Domestic Dog
4. A Wolf
1
Enter the cat's name, weight, mood, and type
Booph
23
unhappy
maine coon
Invalid mood
Invalid type
Collection: Name: Booph Weight: 23.0 Mood: Sleepy Type: Short Hair
Что на самом деле появляется:
Welcome to the Cat and Dog Collection
1. Add a cat or dog
2. Remove a cat or dog
3. Quit
Enter a selection
1
Would you like to add
1. A House Cat
2. A Leopard
3. A Domestic Dog
4. A Wolf
1
Enter the cat's name, weight, mood, and type
Booph
23
unhappy
maine coon
Invalid mood
Invalid type
Collection: Name: Booph Weight: 23.0 Mood: null Type: null