2015-10-15 97 views
2
@Entity 
public class Person { 

private Integer id = null; 
private String name = null; 
private String price = null; 
private Date created = null; 

// String Representation: 
@Override 
public String toString() { 
    return name; 
    // I want to return name and price 
} 

我想在toString函数中返回nameprice?这是正确的返回toString函数中的多个字符串。如果你在其他实体ManyToMany中建立关系?在toString函数中返回两个字符串

如果我做对或错,请给我建议,因为我想在我建立关系的其他实体中显示这些字段。

谢谢!

回答

2

通常,toString()方法返回对象的字符串表示,而不是对象的成员本身。所以,如果你需要的名称和价格的表现,你可以做

return "Name: " + name + ", Price: " + price; 

如果你真的想收到会员nameprice你应该生成getter对于那些在来电中使用它们。

另一种可能性是在某种数据类中“包装”这两个字符串。

+0

感谢您的回答。我已经为此创建了setter和getters。我想知道这是比toString函数或任何其他更好的方式两个以上的字符串返回更好的方法吗? – Sid

+0

@sid最简单的方法是使用getter方法。它会比其他任何东西更具可读性 –

+0

其实我在我的计划实体中为此实体制作关系ManytoMany,并且当我显示计划实体与人员字段时,它仅显示人名,因为我仅在toString函数中返回名称,而我想显示人名和人的价格。 – Sid

1

你可以这样说:

return name+" "+price; 

您可以创建另一种方法同时返回。

您也可以返回String array,以便在需要对名称和价格执行任何操作时不需要拆分字符串。

1

这是正确的返回toString函数中的多个字符串。如果你在其他实体ManyToMany中建立关系?

这可能是

@Override 
public String toString() { 
    return "Name :" +name + " Price : "+price; 
} 

如果您还有关于它更多的对象,只是追加在最后。这样你就不会丢失信息。

+0

@SURESH ATTA谢谢你的回答。所以这是在toString函数或其他更好的方法中返回多个字符串的好方法吗? – Sid

+1

@sid当然是。由于您不能返回任何其他对象,因此只应返回一个字符串。因此建立它并返回。 –

+0

@SURESH ATTA感谢您的帮助:) – Sid

0

您可以使用StringBuilder并从名称,价格和任何你想要的东西中有效地构建你的String

Here该文档。

无论如何,答案是否定的,你不能发回两个字符串,但你可以返回一个字符串,其他人的组成。