Innehållsförteckning:
Video: Java String [equalsIgnoreCase(String anotherString) method] | Java Tutorial 2024
Metoden
toString
returnerar en
Sträng
representation av ett objekt i Java. Som standard returnerar metoden
toString
namnet på objektets klass plus dess hash-kod. Här får du reda på hur du använder metoden
toString
och hur man överstyrar den i dina egna klasser för att skapa mer användbara strängar.
Använda toString i Java
Här är ett enkelt program som använder metoden
toString
:
Public Class TestToString
{
Offentlig statisk tomrumshuvud (String [] args)
{
Anställd emp = nyanställd ("Martinez",
" Anthony”);
System. ut. println (emp. toString ());
}
}
klass Medarbetare
{
privat sträng förnamn;
Private String firstName;
offentligt anställd (String LastName, String FirstName)
{
detta. lastName = lastName;
detta. firstName = firstName;
}
}
Denna kod skapar ett nytt
Medarbetare
objekt; Då skrivs resultatet av dess
toString
-metod till konsolen. När du kör programmet, skrivs följande rad på konsolen:
Anställd @ 82ba41
Obs! Kodkoden - i det här fallet,
82ba41
- kommer utan tvekan att vara annorlunda på ditt system.
Det visar sig att det uttryckliga samtalet till
toString
inte är nödvändigt i det här exemplet. Du kan lika lätt skriva den andra raden i metoden
main
så här:
System. ut. println (emp);
Det beror på att metoden
println
automatiskt anropar metoden
toString
för varje objekt du skickar det till.
Överstyrning tillString i Java
Standardutförandet av
toString
är inte särskilt användbart i de flesta situationer. Du lär dig inte riktigt mycket om ett
Medarbetare
objekt genom att se dess hash-kod, till exempel. Skulle det inte vara bättre om metoden
toString
returnerade några faktiska data från objektet, till exempel medarbetarens namn?
För att göra det måste du åsidosätta metoden
toString
i dina klasser. Faktum är att en av de grundläggande riktlinjerna för objektorienterad programmering i Java är att alltid åsidosätta
toString
. Här är ett enkelt program med en klass
Medarbetare
som strider mot
toString
:
allmän klass TestToString
{
statisk statisk tomt huvud (String [] args)
{
Anställd emp = ny anställd ("Martinez",
"Anthony");
System. ut. println (emp. toString ());
}
}
klass Medarbetare
{
privat sträng förnamn;
Private String FirstName;
offentligt anställd (String LastName, String FirstName)
{
detta.lastName = lastName;
detta. firstName = firstName;
}
public String toString ()
{
returnera "Medarbetare ["
+ detta. firstName + ""
+ detta. förnamn + "]";
}
}
När du kör detta program visas följande rad på konsolen:
Anställd [Anthony Martinez]
Observera att utgången består av klassnamnet följt av viss data från föremålet i parentes. Denna konvention är vanlig i Java-programmering.
Det enda problemet med föregående exempel är att klassnamnet är hårdkodat i metoden
toString
. Du kan använda metoden
getClass
för att hämta det aktuella klassnamnet vid körning:
public String toString ()
{
returnera det här. getClass (). getName () + "["
+ detta. firstName + ""
+ detta. förnamn + "]";
}
Här returnerar metoden
getClass
ett
Klass
objekt som representerar klassen av det aktuella objektet. Då används metoden för
Klass
-objektets
getName
för att få det aktuella klassnamnet.