私はDetective
と呼ばれる私のクラスでは、このメソッドを持っている:同じクラスのtoStringメソッドでメソッドの結果を出力するには?
public boolean check (String line)
{
// Separte the information into three categories
String[] categories = line.split("; ");
String[] info;
// Get the suspect's information
info = categories[0].split(", ");
suspect = new Person(info[0].charAt(0), Integer.parseInt(info[1]), Double.parseDouble(info[2]));
Person person = new Person();
//System.out.println(theOracle.checkPerson(suspect));
if (theOracle.checkPerson(suspect) == 0){
String st = null;
categories[0] = st;
String str = "";
if (info[0].charAt(0) == 'M')
str += "Male, ";
else if (info[0].charAt(0) == 'F')
str += "Female, ";
else
str += "unknown, ";
str += Integer.parseInt(info[1]) + "'s, ";
str += Double.parseDouble(info[2]) +"m";
System.out.println(str);
}
// Get the location
info = categories[1].split(", ");
suspectLocation = new Location(Double.parseDouble(info[0]), Double.parseDouble(info[1]));
//System.out.println(theOracle.checkLocation(suspectLocation));
// Get the time
info = categories[2].split(":");
suspectTime = new Time(Integer.parseInt(info[0]), Integer.parseInt(info[1]));
return false;
}
とも同じクラスのtoStringメソッド:
public String toString()
{
String str = "";
str = "Person: " + "/n";
return str;
}
にはどうすればチェック方法で印刷されますどのような結果を得ることができます/n
の前にtoStringメソッドで印刷するには?私はチェックメソッドにあるものをコピーしてtoStringメソッドに入れようとしましたが、単に場所@ハッシュコードを出力します。 printメソッドの文字列の結果をtoStringに単純にコピーする方法はありますか?
基本的には、私は単にcheckメソッドで出力されたstrを受け取り、代わりにそれをtoStringメソッドで出力することができます。
'Person'オブジェクト情報を印刷する場合は、' Person'クラスに 'toString()'メソッドを実装してください。 –
これはすでにpersonクラス 'public String toString()に実装されています { 文字列str =" "; if(gender == 'F') str + = "female、"; else if(gender == 'M') str + = "male、"; else str + = "不明"; str + = ageRange + "'s、"; str + = height + "m"; return str; } ' – a44d
今、私が探偵のtoStringに新しい人物オブジェクトを作成して、上記の^^が言っていることを正確に表示したら、M - >男性変換などを印刷する必要があります。 – a44d