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 sie die Zeichenfolge anstelle von Datumstypen streng vergleichen, was ich möchte.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post