gpt4 book ai didi

java - 如何在 get 方法中将字符值显示为 set 方法中的字符串值

转载 作者:行者123 更新时间:2023-11-30 06:43:00 25 4
gpt4 key购买 nike

我有下面的动物类别。现在,有 Animal 类的测试文件。

我正在尝试获取字符值m并将其显示为male。不知道该把逻辑放在哪里。我应该把它放在 setGender 方法中还是其他地方。请告知答案。

package chapter4;

public class Animal {
private int lifeExpectancy;
private int weight;
String name;
Character gender;
public String type;
/*
public void printValues() {
String animal = new String();
System.out.println(lifeExpectancy + "" + weight + "" + name + "" + gender + "" + type);
}
*/


public Animal(int lifeExpectancy, int weight, String name, Character gender, String type) {
//super();
this.lifeExpectancy = lifeExpectancy;
this.weight = weight;
this.name = name;
this.gender = gender;
this.type = type;
}

public int getLifeExpectancy() {
return lifeExpectancy;
}

public void setLifeExpectancy(int lifeExpectancy) {
this.lifeExpectancy = lifeExpectancy;
}

public int getWeight() {
return weight;
}



public void setWeight(int weight) {
this.weight = weight;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public Character getGender() {
/*
if (gender == 'm' || gender == 'M')
//gender.equals(obj)"Male";
this.setGender(gender);
return "Male";
*/
return gender;
}

public void setGender(Character gender) {
this.gender = gender;
}

public String getType() {
return type;
}

public void setType(String type) {
this.type = type;
}

/*

public String printValues() {
return "Animal [lifeExpectancy=" + lifeExpectancy + ", weight=" + weight + ", name=" + name + ", gender="
+ gender + ", type=" + type + "]";
}
*/

@Override
public String toString() {
return "Animal [lifeExpectancy=" + lifeExpectancy + ", weight=" + weight + ", name=" + name + ", gender="
+ gender + ", type=" + type + "]";
}

}

测试动物类

public class AnimalTst {

public static void main(String[] args) {
Animal animal = new Animal (65, 14000 ,"Jumbo", 'm', "elephant");

System.out.println("A " + animal.getGender() + " " + animal.getType() + " named " + animal.getName()
+ " should live to be " + animal.getLifeExpectancy() + " and weigh " + animal.getWeight() + " pounds");
}
}

最佳答案

基本答案是如何显示该值应该在显示时决定;它不一定是 Animal 类的功能。这是一个责任分离的问题。 动物关于性别的唯一工作应该是知道它是什么性别。它不应该,而且事实上不能,期望能够处理向外界呈现此信息的细节。

想象一下您可能需要向人类展示动物性别的所有不同方式:

最简单的情况是当您需要在句子中插入“男性”或“女性”一词时,例如“这种动物的性别是???”。

在另一种情况下,您可能需要在句子开头使用大写形式“Male”或“Female”:“??? Animals such one...”。

在另一个例子中,您可能需要所有格形式“男性”或“女性”:“??? 颜色与周围环境融为一体......”

在另一个例子中,您可能需要法语中的对应词“mâle”和“femelle”:“Sexe de cet Animal est ???”。

在另一种情况下,您可以通过选择一对标记为“男性”和“女性”的单选按钮中适当的一个来在 GUI 上显示性别。

关于java - 如何在 get 方法中将字符值显示为 set 方法中的字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44102734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com