Java 使用getter/setter在记录的布尔值上写入字符串
[编辑]当我运行当前程序并输入它输出的“Bristol”时 “布里斯托尔由Great Western运营,并有虚假的” 我需要它说“布里斯托尔是由大西部运营的,没有免费通道” 我必须对StepFreeAccess使用布尔值,运行时应输出“Bristol由Great Western操作,并且具有无自由步骤访问””需要一种方法,其中:Java 使用getter/setter在记录的布尔值上写入字符串,java,boolean,getter-setter,Java,Boolean,Getter Setter,[编辑]当我运行当前程序并输入它输出的“Bristol”时 “布里斯托尔由Great Western运营,并有虚假的” 我需要它说“布里斯托尔是由大西部运营的,没有免费通道” 我必须对StepFreeAccess使用布尔值,运行时应输出“Bristol由Great Western操作,并且具有无自由步骤访问””需要一种方法,其中: s1=设置访问(s1,false) s2=设置访问(s2,真) s3=设置访问(s3,真) 将更改为字符串,即true=“无步骤访问”和false=“无步骤访问”
- s1=设置访问(s1,false)李>
- s2=设置访问(s2,真)李>
- s3=设置访问(s3,真)李>
对于布里斯托尔案例,您可以尝试:
if (answer.equals("Bristol")) {
String aux = "";
if (s1.stepFreeAccess) aux = "step free access";
else aux = "no step free access";
System.out.println(s1.station +" is operated by "+ s1.operatingCompany +" and has "+aux);
}
一般而言:
getter/setter应该位于具有coresponding字段的类中。例如,getAcces()方法应该是类记录的一部分
public boolean getAcces(){
return this.stepFreeAccess
}
public void setAcces(acces){
this.stepFreeAcces = access;
}
在您的情况下,我建议为记录编写一个构造函数。建造商应需要车站、运营公司和无障碍通道。在构造函数中,为coresponding字段指定其值
为了解决您的问题,现在可以设置getter from acces来传递所需的字符串
例如:
public String getAccess(){
if(this.access){
return *return String for true here*
}else{
return *return String for false here*
}
}
你有什么问题?当我运行当前程序并输入“Bristol”时,它会输出“Bristol由Great Western运营且存在错误”我需要它说“Bristol由Great Western运营且没有自由步进访问权”。需要将布尔值false改为“no free step access”不知何故,我已经尝试了一段时间,但没有找到成功的方法检查我对您的第一个案例的答案。是的,它是有效的,但我对使用记录有特定要求,“no free step access”是布尔值,因此在我的案例中它不起作用。它得到了我想要的结果,但不是以我需要的方式。对不起,我不明白你需要什么。我不明白这是如何回答这个问题的。@mypetlion当records类中的方法getAccess()返回布尔stepFreeAccess的对应字符串时,你可以在输出中调用getAcces()。
public String getAccess(){
if(this.access){
return *return String for true here*
}else{
return *return String for false here*
}
}