[Java-Anfänger] println-Methode ohne Angabe des Sammlungstyps

Frage

Ich habe kürzlich die Sammlung studiert und hatte einige Zweifel, daher werde ich sie im Artikel überprüfen.

Sammlung

Wenn Sie bei Verwendung von List kein Typargument angeben, wird es beim Speichern als ** Objekttyp ** verarbeitet.

Mystery Processing, das ich nicht verstehen konnte

Ich habe eine Variable vom Typ ** String ** in die Liste eingefügt, aber da ich den Typ der Liste nicht angegeben habe, wird sie zum ** Objekttyp **, und ** die Zeichenfolge ** dieses Objekts wird von println angezeigt ...?

Druckverarbeitung

Rufen Sie die ** valueOf ** -Methode des im Argument von ~~ println enthaltenen Objekts auf, um die Zeichenfolge anzuzeigen. ~~ <Behoben 2019/05/24> Die Verarbeitung erfolgt durch Angabe des Arguments println () an das Argument der statischen Methode valueOf () der String-Klasse.

Unterschied zwischen toString und valueOf

Die toString-Methode gibt eine Folge von Instanzen zurück. Die valueOf-Methode ruft die toString-Methode des Objekts auf, wenn das als Argument übergebene Objekt nicht null ist.

Immerhin toString

valueOf gibt schließlich auch die Zeichenfolge für dieses Objekt zurück.

User.java


public class User{
    private String name;
    public User(String name){
         this.name = name;
    }
    public String toString(){
         return name;
    }
}

Main.java


public class Main{
   public static void main(String[] args){
      ArrayList list = new ArrayList();
      list.add(new User("sample"));
      System.out.println(list.get(0)); //sample
   }
}

Ergebnis

Ich konnte die Typensicherheit und das Überschreiben besser verstehen.

Referenz

Recommended Posts

[Java-Anfänger] println-Methode ohne Angabe des Sammlungstyps
Sammlung von Java-Testcode-Methoden
Java-Anfänger-Entwurfsmuster (Factory-Methodenmuster)
[Java] Express-Aufzählungstyp ohne Verwendung des Aufzählungstyps (Aufzählung)
Java-Methode
Java (Methode)
[Anfänger] Java-Methode / Klasse / externe Bibliothek [Anmerkung 23]
Java Anfänger 3
Java Anfänger
[Java] -Methode
[Java] -Methode
[Java SE 11 Silver] Zusammenfassung der Arrays-Klassenmethoden [Java-Anfänger]
Java-Typkonvertierung
[Java] Aufzählungstyp
Java Optionaler Typ
Java8-Methodenreferenz
Java Reintroduction-Java Collection
[Java] forEach-Methode
Übungen für Java-Anfänger
Java-Doppeltyp
Java8-Methodenreferenz
[Java] Zufällige Methode
[Java] Split-Methode
Java-Spezifikationsnotiz
[Java] Sammlungsframework
Java-Übung "Anfänger"
[Anfänger] Java-Klassenfeldmethode / Kapselung (Getter-Setter) [Anmerkung 25]