Jei norite pavaizduoti bet kurį objektą kaip eilutę, toString() metodas atsiranda.
Metodas toString() grąžina objekto eilutės atvaizdavimą.
dvigubai susietas sąrašas
Jei spausdinate bet kurį objektą, Java kompiliatorius viduje iškviečia objekto metodą toString(). Taigi, nepaisydami toString() metodo, grąžinama norima išvestis, tai gali būti objekto būsena ir pan., priklausomai nuo jūsų įgyvendinimo.
Java toString() metodo privalumas
Nepaisydami Object klasės metodo toString(), galime grąžinti objekto reikšmes, todėl nereikia daug kodo rašyti.
Problemos supratimas be toString() metodo
Pažiūrėkime paprastą kodą, kuris spausdina nuorodą.
Studentas.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() } }
Išvestis:
Student@1fee6fc Student@1eed786
Kaip matote aukščiau pateiktame pavyzdyje, spausdinant s1 ir s2 išspausdinamos objektų maišos kodų reikšmės, bet aš noriu atspausdinti šių objektų reikšmes. Kadangi „Java“ kompiliatorius viduje iškviečia metodą toString(), šio metodo nepaisymas grąžins nurodytas reikšmes. Supraskime tai toliau pateiktu pavyzdžiu:
Java toString() metodo pavyzdys
Pažiūrėkime toString() metodo pavyzdį.
Studentas.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() } }
Išvestis:
101 Raj lucknow 102 Vijay ghaziabad
Aukščiau pateiktoje programoje „Java“ kompiliatorius iškviečia iš vidaus toString() metodą, nepaisydami šio metodo, bus pateiktos nurodytos reikšmės s1 ir s2 Studentų klasės objektai.
pareiškimo aprėptis