logo

Java toString()-metoden

Hvis du vil representere et objekt som en streng, toString()-metoden kommer til.

Metoden toString() returnerer String-representasjonen av objektet.

Hvis du skriver ut et objekt, aktiverer Java-kompilatoren internt toString()-metoden på objektet. Så å overstyre toString()-metoden, returnerer ønsket utgang, det kan være tilstanden til et objekt osv. avhengig av implementeringen din.

Fordel med Java toString()-metoden

Ved å overstyre toString()-metoden til Object-klassen, kan vi returnere verdier til objektet, slik at vi ikke trenger å skrive mye kode.

Forstå problemet uten toString()-metoden

La oss se den enkle koden som skriver ut referanse.

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() } } 

Produksjon:

 Student@1fee6fc Student@1eed786 

Som du kan se i eksemplet ovenfor, skriver utskrift av s1 og s2 ut hashkodeverdiene til objektene, men jeg vil skrive ut verdiene til disse objektene. Siden Java-kompilatoren kaller toString()-metoden internt, vil overstyring av denne metoden returnere de angitte verdiene. La oss forstå det med eksemplet nedenfor:

Eksempel på Java toString()-metoden

La oss se et eksempel på toString()-metoden.

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 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() } } 

Produksjon:

 101 Raj lucknow 102 Vijay ghaziabad 

I programmet ovenfor kaller Java-kompilatoren internt toString() metode, vil overstyre denne metoden returnere de spesifiserte verdiene av s1 og s2 objekter fra studentklassen.