Heim  >  Artikel  >  Java  >  So erhalten Sie den maximalen Wert aus dem Stream in Java8

So erhalten Sie den maximalen Wert aus dem Stream in Java8

WBOY
WBOYnach vorne
2023-05-14 15:43:122471Durchsuche

Der Stream von Java8 benötigt max.

 public static void main(String[] args) {
        List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6);
        Integer max = list.stream().max((a, b) -> {
            if (a > b) {
                return 1;
            } else return -1;
        }).get();

        System.out.println(max);
    }

Hinweis: Die Größe wird hier durch positive und negative Zahlen und 0-Werte bestimmt. Anstatt es direkt zu schreiben, können Sie das Schreiben vereinfachen Statistiken.

Diese Konzepte und Verwendungen werden auch im Java-Stream eingeführt, was unsere Datenstatistikarbeit für Sammlungen und Arrays erheblich erleichtert.

maxmincount „Fall 1: Holen Sie sich das längste Element in der String-Sammlung.“

if (a > b) {
return a;
} else return b;

„Fall 2: Holen Sie sich den Maximalwert in der Integer-Sammlung.“

int max = list.stream().max((a, b) -> a > b ? 1 : -1).get();

„Fall 3: Holen Sie sich den Mitarbeiter mit dem höchsten Gehalt ." So erhalten Sie den maximalen Wert aus dem Stream in Java8

public class StreamTest {
 public static void main(String[] args) {
  List<String> list = Arrays.asList("adnm", "admmt", "pot", "xbangd", "weoujgsd");
 
  Optional<String> max = list.stream().max(Comparator.comparing(String::length));
  System.out.println("最长的字符串:" + max.get());
 }
}

「Fall 4: Berechnen Sie die Anzahl der Elemente größer als 6 in der Ganzzahlmenge.」

public class StreamTest {
 public static void main(String[] args) {
  List<Integer> list = Arrays.asList(7, 6, 9, 4, 11, 6);
 
  // 自然排序
  Optional<Integer> max = list.stream().max(Integer::compareTo);
  // 自定义排序
  Optional<Integer> max2 = list.stream().max(new Comparator<Integer>() {
   @Override
   public int compare(Integer o1, Integer o2) {
    return o1.compareTo(o2);
   }
  });
  System.out.println("自然排序的最大值:" + max.get());
  System.out.println("自定义排序的最大值:" + max2.get());
 }
}

Das obige ist der detaillierte Inhalt vonSo erhalten Sie den maximalen Wert aus dem Stream in Java8. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen