[英]Print object values in toString
I wants to override toString() method to show name of user but Name is the inner class of User class so how can I print it. 我想重写toString()方法以显示用户名,但Name是User类的内部类,因此我该如何打印它。
public class User
{
public static class Name
{
private String _first, _last;
public String getFirst() { return _first; }
public String getLast() { return _last; }
public void setFirst(String s) { _first = s; }
public void setLast(String s) { _last = s; }
}
private Name _name;
public Name getName() { return _name; }
public void setName(Name n) { _name = n; }
@Override
public String toString()
{
return "";//How to print first name and last name here
}
}
Try like this 这样尝试
@Override
public String toString() {
return _name.getFirst()+_name.getLast();
}
How about 怎么样
public String toString()
{
Name name = getName();
return name.getFirst() + " " + name.getLast();
}
Try this: 尝试这个:
@Override
public String toString()
{
String a = getName()._first;
String b = getName()._last;
return "a: " + a + " :: b: " + b;//How to print first name and last name here
}
User user = new User();
User.Name name = new User.Name();
name.setFirst("first name");
name.setLast("last name");
user.setName(name);
System.out.println(user);
If you want to return for example John Deer
you can try this code: 例如,如果您想返回John Deer
,可以尝试以下代码:
@Override
public String toString()
{
return _name.getFirst().concat(" ").concat(_name.getLast());
}
concat(string str) appends the string str
to the end of the String object it is called on. 的concat(字符串str)附加字符串str
到它被称为在字符串对象的端部。 You can read more about it on the link. 您可以在链接上了解更多信息。
The snippet provided above will read First Name
from _name
, append an empty space just after it and then append the Last name
on the final string. 上面提供的代码段将从_name
读取First Name
,在其后添加一个空格,然后在最终字符串上添加Last name
。
@Override
public String toString()
{
return _name.getFirst() + " " + _name.getLast();
}
Call like this. 这样打电话。
public class MyMain {
public static void main(String[] args) {
User.Name name = new Name();
name.setFirst("Clement");
name.setLast("Alexandria");
User user = new User();
user.setName(name);
System.out.println(user);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.