我正从数组中打印出一个元素。该数组包含一个(类)卡,每张卡由一个字符串面(在本例中为K)和一个字符(在本例中为spade)组成。项目名称为pokergames,类为Card。以下是打印出来的内容:
pokergames.Card@26ffd553
提示:我尝试使用toString()方法转换卡片,输出与没有它的情况相同。
看起来应该是这样的:♠K
以下是我使用的编码:
//create the 2 private attributes
private String face;
private char suit;
//constructor for card
public Card(String face, char suit)
{
this.face = face;
this.suit = suit;
}
//create the public function toString to add the face and suit
public String tostring()
{
return face + suit;
}
答案 0 :(得分:1)
您的toString
方法签名错误。它应该是toString
而不是tostring
。
为了避免在覆盖方法时出现逻辑错误,您应该使用@Override
注释来确保覆盖正确的方法。所以你的toString理想情况应如下:
@Override
public String toString() {
return face + suit;
}