¿Qué biblioteca de clases debería introducirse para el método tostring de Java?
toString
public String toString() devuelve la representación de cadena del objeto. Normalmente, el método toString devuelve una cadena que "representa textualmente" este objeto. El resultado debe ser conciso pero fácil de leer. Se recomienda que todas las subclases anulen este método.
El método toString de la clase Object devuelve una cadena que consta del nombre de la clase (de la cual el objeto es una instancia), la etiqueta "@" y el valor hexadecimal sin signo del código hash de este objeto. La base representa la composición. En otras palabras, este método devuelve una cadena cuyo valor es igual a:
getClass().getName() + '@' + Integer.toHexString(hashCode())
toString se deriva de la clase Object de Java. Se define en Object como: devolver una cadena con un nombre de clase @hashcode, que puede anularse para devolver información que crea útil.
toStrng no tiene argumentos
anular: public String toString(){
// inserta tu código
devuelve "informaciones"
}
Porque en La clase Object en Java es la clase base, por lo que cada clase tendrá un método toString.
System.out.println(Object) en realidad llama al método toString del objeto.
Lo que usamos con más frecuencia es el método toString de la clase String. La clase String anula el método toString de Object para devolver el valor de cadena de String.
Debido a que es un método que ya existe en el objeto, y todas las clases heredan el objeto, entonces "todos los objetos tienen este método".
Por lo general, solo se asigna para facilitar la salida, como. como System.out.println(xx), si el "xx" entre paréntesis (_kuo4 hao4 li3 mian4) no es de tipo String, el método toString() de xx se llamará automáticamente
En resumen , es solo sun Cuando la compañía desarrolló Java, se agregó un método especialmente para facilitar las operaciones de cadenas para todo tipo de caracteres (de0 shi2 hou4 wei4 le0 fang1 bian4 suo3 you3 lei4 de0 zi4)
//ToString try cambiando el nombre
}
A obj=new A();
System.out.println(obj);
Tú obtendrá el resultado: xxxx El nombre de la clase más la dirección de @xxxxxxx
System.out.println(obj.getString());
obtendrá el resultado: este es A
toString La ventaja es que se llamará automáticamente cuando se encuentre un método de salida como "println", y no es necesario escribirlo explícitamente
Porque es un método que ya existe en Object, y todas las clases heredan Object. Entonces "todos los objetos tienen este método".
Por lo general, es solo por conveniencia de la salida, como System.out.println(xx). Si el "xx" entre corchetes no es de tipo String, el método toString() de xx será. llamado automáticamente
En resumen, es solo un método agregado especialmente por Sun Company para facilitar las operaciones de cadenas de todas las clases al desarrollar Java
Respuesta adicional:
El El propósito de escribir este método es que sea conveniente de operar, por lo que puede usarse o no en operaciones de archivos
Ejemplo 1:
clase pública A{
public String toString(){return "this is A ";}
}
Si existe la siguiente oración en un método:
A obj= new A();
System .out.println(obj);
Obtendrá el resultado: este es A
Ejemplo 2:
clase pública A{
public String getString(){return "this is A";}//toString intenta cambiar el nombre
}
A obj=new A();
System.out.println(obj);
Obtendrá el resultado: el nombre de la clase más la dirección de xxxx@xxxxxxx p>
System.out.println(obj.getString()) ;
Obtendrá el resultado: este es A
¿Ves la diferencia? toString es que se llamará automáticamente cuando encuentre un método de salida como "println", sin tener que escribirlo explícitamente.
toString() es un método que anula la clase principal Object. El propósito es expresar el objeto en forma de cadena.
Las clases de entidad generales deben anular toString(). equals(), hashCode() y otros métodos, como Usuario, Estudiante y otras clases de entidad
Si una clase se usa para manejar algún negocio, no es necesario reescribir toStirng()
Estos métodos están encapsulados en el paquete commons-lang,
1) public boolean equals(Object obj){
return EqualsBuilder.reflectionEquals(this.obj); p >
}
2) public int hashCode(){
return HashCodeBuilder.reflectionHashCode(this);
}
3) public String toStirng(){
teturn ToStringBuilder.reflectionToString(this);
}
El método toString de la clase Object devuelve una cadena, el carácter La cadena consta del nombre de clase de la cual el objeto es una instancia, el marcador "@" y la representación hexadecimal sin signo del código hash de este objeto.
En otras palabras, este método devuelve una cadena cuyo valor es igual a:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Para ejemplo: com.struts2.User@de6ced
Después de reescribir el método toString() de esta clase, se devolverá el valor de retorno del método toString() de esta clase.
¿ver copia simple en el portapapeles?
paquete com.struts2;
usuario de clase pública {
nombre de usuario de cadena privada
contraseña de cadena privada;
Usuario público(){
}
Usuario público (nombre de usuario de cadena, contraseña de cadena) {
this.username=nombre de usuario;
this.password= contraseña;
}
public String getUsername() {
devolver nombre de usuario;
}
public void setUsername(String nombre de usuario) {
this.username = nombre de usuario
}
public String getPassword() {
devolver contraseña
}
public void setPassword(String contraseña) {
this. contraseña = contraseña;
}
public String toString(){
devuelve este.nombre de usuario+esta.contraseña
}
public static void main(String[] args) {
System.out.println(new User("Zhang San","123456"));
}
}
1. Método toString() La clase Object tiene un método toString(), y cada clase que cree hereda este método. Devuelve una representación de cadena del objeto y es muy útil para la depuración. Sin embargo, el método toString() predeterminado a menudo no puede satisfacer las necesidades y es necesario anular este método.
El método toString()
1. Método toString() La clase Object tiene un método toString(), y cada clase que cree hereda este método. Devuelve una representación de cadena del objeto y es muy útil para la depuración. Sin embargo, el método toString() predeterminado a menudo no puede satisfacer las necesidades y es necesario anular este método.
El método toString() convierte el objeto en una cadena.
Mire el siguiente código:
muestra de paquete;
clase Villano {
nombre de cadena privada;
conjunto vacío protegido (cadena nm ) {
nombre = nm;
}
villano público (nombre de cadena) {
this.nombre = nombre; p>
}
public String toString() {
return "Soy un villano y mi nombre es " + nombre;
}
}
Orco de clase pública extiende Villano {
privado int número de orc;
Orco público (nombre de cadena, int número de orc) { p>
super(nombre);
this.orcNumber = orcNumber;
}
cambio de vacío público (nombre de cadena, int orcNumber) {
set(nombre);
this.orcNumber = orcNumber;
}
cadena pública toString() {
return "Orc" + orcNumber + ":" + super.toString();
}
public static void main(String[] args) {
Orco orco = new Orco("Limburger", 12);
System.out.println(orco);
orc.change("Bob", 19);
System.out.println(orc);
}
}
Resultado:
muestra p>