Konvertieren von Elementen einer Liste in eine Zeichenfolge

8

Ich möchte den String-Text der Elemente erhalten, die in einer Liste gespeichert sind, sagen wir List<Car> . Wären die Methoden toArray () und toString () die besten Optionen?

    
Anto 23.01.2010, 19:06
quelle

7 Antworten

3

Ja, aber wenn Sie es manuell tun, haben Sie mehr Kontrolle:

%Vor%

Wenn Sie die Methode toString() nicht überschrieben haben und die ID nicht überschreiben möchten, können Sie car.getName() anstelle von car.toString() (oder eine beliebige Kombination von Eigenschaften) verwenden

    
Bozho 23.01.2010, 19:18
quelle
15

Eine andere Idee ist, den Apache Commons Lang zu verwenden, um den folgenden Code zu schreiben:

%Vor%

Das Interesse ist, dass Sie auch ein Trennzeichen angeben können, zum Beispiel:

%Vor%     
romaintaz 23.01.2010 22:13
quelle
7

Wenn Sie der String-Ausgabe nach der Konvention nicht widersprechen:

%Vor%

... Sie können einfach die Methode List toString() aufrufen, um Ihre Ausgabe zu erhalten (ich bin mir nicht sicher, warum Leute dafür plädieren, eine Schleife dafür zu verwenden). Es kann auch sinnvoll sein, Cars toString() -Methode zu überschreiben, um eine menschenfreundliche Beschreibung des Objekts zurückzugeben.

Wenn Sie jedoch jedes Element als eine einzelne String erhalten möchten, müssen Sie über die Liste ein Element gleichzeitig iterieren.

    
Adamski 23.01.2010 21:59
quelle
7

Es gibt eine static toString(Object[]) Methode und java.util.Arrays . Rufen Sie es mit dem toArray() Ergebnis der Liste auf (wie Sie vorgeschlagen haben), sollten Sie den Job erledigen.

    
Dominik 23.01.2010 19:45
quelle
3
___ answer2124919 ___

Wenn Sie der String-Ausgabe nach der Konvention nicht widersprechen:

%Vor%

... Sie können einfach die Methode Streams Collectors aufrufen, um Ihre Ausgabe zu erhalten (ich bin mir nicht sicher, warum Leute dafür plädieren, eine Schleife dafür zu verwenden). Es kann auch sinnvoll sein, Cars %code% -Methode zu überschreiben, um eine menschenfreundliche Beschreibung des Objekts zurückzugeben.

Wenn Sie jedoch jedes Element als eine einzelne %code% erhalten möchten, müssen Sie über die Liste ein Element gleichzeitig iterieren.

    
___ answer2124959 ___

Eine andere Idee ist, den Apache Commons Lang zu verwenden, um den folgenden Code zu schreiben:

%Vor%

Das Interesse ist, dass Sie auch ein Trennzeichen angeben können, zum Beispiel:

%Vor%     
___ answer2124450 ___

Es gibt eine %code% Methode und %code% . Rufen Sie es mit dem %code% Ergebnis der Liste auf (wie Sie vorgeschlagen haben), sollten Sie den Job erledigen.

    
___ qstntxt ___

Ich möchte den String-Text der Elemente erhalten, die in einer Liste gespeichert sind, sagen wir %code% . Wären die Methoden toArray () und toString () die besten Optionen?

    
___ qstnhdr ___ Konvertieren von Elementen einer Liste in eine Zeichenfolge ___ answer36288693 ___

Konvertieren Sie zuerst Ihre Liste (Sammlung) in ein Array und erstellen Sie eine Zeichenfolge für jedes Element.

%Vor%     
___ tag123string ___ Eine Zeichenfolge ist eine endliche Abfolge von Symbolen, die üblicherweise für Text verwendet wird, manchmal jedoch auch für beliebige Daten. ___ antwort43111056 ___

Sie können Java 8 %code%

verwenden %Vor%

Lesen Sie JavaDoc zu %code% , um weitere Informationen zu erhalten .

    
___ tag123java ___ Java (nicht zu verwechseln mit JavaScript oder JScript oder JS) ist eine universelle objektorientierte Programmiersprache, die für die Verwendung in Verbindung mit der Java Virtual Machine (JVM) entwickelt wurde. "Java-Plattform" ist der Name für ein Computersystem, auf dem Tools zum Entwickeln und Ausführen von Java-Programmen installiert sind. Verwenden Sie dieses Tag für Fragen, die sich auf die Java-Programmiersprache oder Java-Plattform-Tools beziehen. ___ tag123list ___ Liste kann sich beziehen auf: eine verkettete Liste (eine geordnete Menge von Knoten, die jeweils auf ihren Nachfolger verweisen) oder eine Form eines dynamischen Arrays. Um nicht für HTML-Listen verwendet zu werden, verwenden Sie stattdessen [html-lists]. ___ tag123collections ___ Auflistungs-APIs stellen Entwicklern eine Reihe von Klassen und Schnittstellen zur Verfügung, mit denen die Sammlung von Objekten vereinfacht wird. ___ answer2124398 ___
%Vor%

Hinweis: Das obige zeigt die sinnvolle Nachricht nur an, wenn Sie die toString () - Methode der Car-Klasse überschrieben haben.

z. B.

%Vor%

Die Methode toString () sollte außer Kraft gesetzt werden, um sinnvolle Informationen über das Objekt in der Zeichenfolgenform zurückzugeben.

In Ihrem Fall denke ich, dass die aussagekräftigen Informationen alle Details des Autos sein würden. Daher ist das Überschreiben der toString () -Methode der beste Ansatz, anstatt getCarName () oder ähnliche Methoden zu verwenden.

    
___ answer2124374 ___

Ja, aber wenn Sie es manuell tun, haben Sie mehr Kontrolle:

%Vor%

Wenn Sie die Methode %code% nicht überschrieben haben und die ID nicht überschreiben möchten, können Sie %code% anstelle von %code% (oder eine beliebige Kombination von Eigenschaften) verwenden

    
___
hkbharath 30.03.2017 07:19
quelle
2

Konvertieren Sie zuerst Ihre Liste (Sammlung) in ein Array und erstellen Sie eine Zeichenfolge für jedes Element.

%Vor%     
UnixShadow 29.03.2016 15:31
quelle
-2
%Vor%

Hinweis: Das obige zeigt die sinnvolle Nachricht nur an, wenn Sie die toString () - Methode der Car-Klasse überschrieben haben.

z. B.

%Vor%

Die Methode toString () sollte außer Kraft gesetzt werden, um sinnvolle Informationen über das Objekt in der Zeichenfolgenform zurückzugeben.

In Ihrem Fall denke ich, dass die aussagekräftigen Informationen alle Details des Autos sein würden. Daher ist das Überschreiben der toString () -Methode der beste Ansatz, anstatt getCarName () oder ähnliche Methoden zu verwenden.

    
Yatendra Goel 23.01.2010 19:27
quelle

Tags und Links