logo

Método Java toString()

Si desea representar cualquier objeto como una cadena, método toString() llega a existir.

arquitectura von neumann

El método toString() devuelve la representación String del objeto.

Si imprime cualquier objeto, el compilador de Java invoca internamente el método toString() en el objeto. Entonces, al anular el método toString(), se devuelve el resultado deseado, puede ser el estado de un objeto, etc., dependiendo de su implementación.

Ventaja del método Java toString()

Al anular el método toString() de la clase Object, podemos devolver valores del objeto, por lo que no necesitamos escribir mucho código.

Comprender el problema sin el método toString()

Veamos el código simple que imprime la referencia.

clasificación de selección java

Student.java

 class Student{ int rollno; String name; String city; Student(int rollno, String name, String city){ this.rollno=rollno; this.name=name; this.city=city; } public static void main(String args[]){ Student s1=new Student(101,'Raj','lucknow'); Student s2=new Student(102,'Vijay','ghaziabad'); System.out.println(s1);//compiler writes here s1.toString() System.out.println(s2);//compiler writes here s2.toString() } } 

Producción:

 Student@1fee6fc Student@1eed786 

Como puede ver en el ejemplo anterior, imprimir s1 y s2 imprime los valores del código hash de los objetos, pero quiero imprimir los valores de estos objetos. Dado que el compilador de Java llama internamente al método toString(), anular este método devolverá los valores especificados. Entendámoslo con el ejemplo que se da a continuación:

Ejemplo de método Java toString()

Veamos un ejemplo del método toString().

Student.java

mamita kulkarni
 class Student{ int rollno; String name; String city; Student(int rollno, String name, String city){ this.rollno=rollno; this.name=name; this.city=city; } public String toString(){//overriding the toString() method return rollno+' '+name+' '+city; } public static void main(String args[]){ Student s1=new Student(101,'Raj','lucknow'); Student s2=new Student(102,'Vijay','ghaziabad'); System.out.println(s1);//compiler writes here s1.toString() System.out.println(s2);//compiler writes here s2.toString() } } 

Producción:

 101 Raj lucknow 102 Vijay ghaziabad 

En el programa anterior, el compilador de Java llama internamente Encadenar() método, anular este método devolverá los valores especificados de s1 y s2 objetos de la clase Estudiante.