So sortieren Sie eine Liste von Objekten nach zwei Feldern, wenn das erste Feld ein Datum ist, aber des Zeichenstreichs Java

Java-Forum
Anonymous
 So sortieren Sie eine Liste von Objekten nach zwei Feldern, wenn das erste Feld ein Datum ist, aber des Zeichenstreichs

Post by Anonymous »

Ich habe eine Reihe von Objekten, die ich nach zwei der Felder des Objekts sortiert habe. < /p>
Product.java

private string productionDate;
private string productionCountry;
private string productDescription;
< /code>
Jetzt habe ich ein Array des Produkts, das mit einer Reihe von Produkten besiedelt ist. < /p>
List productList
< /code>
Ich versuche im Grunde genommen, die Produktliste zuerst nach ProductionDate und dann nach Produktionscountry zu sortieren, was die folgende Abfrage bewirkt. < /p>
Select * from Product Order By production_date, production_country;
< /code>
Ich habe eine Möglichkeit, mehrere Felder zu sortieren, indem ich so etwas sortiert < /p>
List sortedProduct = productList.stream()
.sorted(Comparator.comparing(Product::getProductionDate)
.thenComparing(Product::getProductionCountry))
.collect(Collectors.toList());
< /code>
Aber das Problem ist, dass ProductionDate vom Typ String ist, sodass die obige Lösung sortiert wird, indem er die Zeichenfolge strikt verglichen wird, anstatt vom Datumstyp zu vergleichen. Was ist das, was ich möchte.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post