你知道如何在不创建额外行的情况下初始化字符串吗?我正在打印到输出文件。
public String speedUp(int MPH) {
String output ="";
if(!moving){
output+="\tError: Train is not moving";
}
else{this.speed += MPH;}
return output;
}
这就是我目前所拥有的,当我查看输出文件时,每次没有错误时我会得到一条额外的行。
以下是我目前的输出:
SPEEDUP 20
SLOWDOWN 5
以下是我调用该方法的方法。
out.println(speedup(MPH));
'out'被定义为我的印刷作家。
答案 0 :(得分:1)
我猜您打印到每个speedUp
结果的文件。
只有speedUp
结果不为空时,您才能更改并打印到文件。
答案 1 :(得分:1)
你是如何打印字符串的? 如果您使用println,它将创建一个空行。如果你的String中有一个新的行字符,请使用print()。
答案 2 :(得分:0)
public String speedUp(int MPH) {
if(!moving){
return "\tError: Train is not moving";
}
else
{
this.speed += MPH;
return "";
}
}
在SpeedUP()
的调用下忽略空字符串。
或者考虑重构代码以返回布尔值,一旦返回false,则将字符串写入文件,否则忽略它。或者如果列车没有移动你正在调用的mthode,并将异常消息写入文件,则抛出异常。