Java 8 - Übersicht
JAVA 8 ist ein Hauptfeature-Release der JAVA-Programmiersprachenentwicklung. Die erste Version wurde am 18. März 2014 veröffentlicht. Mit der Java 8-Version stellte Java Unterstützung für die funktionale Programmierung, eine neue JavaScript-Engine, neue APIs für die Manipulation von Datum und Uhrzeit, eine neue Streaming-API usw. bereit.
Neue Funktionen
-
Lambda-Ausdruck − Fügt funktionale Verarbeitungsfähigkeiten zu Java hinzu.
-
Methodenreferenzen − Referenzieren von Funktionen über ihren Namen, anstatt sie direkt aufzurufen. Funktionen als Parameter verwenden.
-
Standardmethode − Schnittstelle, um eine standardmäßige Methodenimplementierung zu haben.
-
Neue Tools − Neue Compiler-Tools und Dienstprogramme wie „jdeps“ werden hinzugefügt, um Abhängigkeiten herauszufinden.
-
Stream-API − Neue Stream-API zur Erleichterung der Pipeline-Verarbeitung.
-
Datumszeit-API − Verbesserte Datumszeit-API.
-
Optional − Schwerpunkt auf Best Practices für den korrekten Umgang mit Nullwerten.
-
Nashorn, JavaScript-Engine − Eine Java-basierte Engine zum Ausführen von JavaScript-Code.
Betrachten Sie das folgende Code-Snippet.
Live-Demo
import java.util.Collections;
import java.util.List;
import java.util.ArrayList;
import java.util.Comparator;
public class Java8Tester {
public static void main(String args[]) {
List<String> names1 = new ArrayList<String>();
names1.add("Mahesh ");
names1.add("Suresh ");
names1.add("Ramesh ");
names1.add("Naresh ");
names1.add("Kalpesh ");
List<String> names2 = new ArrayList<String>();
names2.add("Mahesh ");
names2.add("Suresh ");
names2.add("Ramesh ");
names2.add("Naresh ");
names2.add("Kalpesh ");
Java8Tester tester = new Java8Tester();
System.out.println("Sort using Java 7 syntax: ");
tester.sortUsingJava7(names1);
System.out.println(names1);
System.out.println("Sort using Java 8 syntax: ");
tester.sortUsingJava8(names2);
System.out.println(names2);
}
//sort using java 7
private void sortUsingJava7(List<String> names) {
Collections.sort(names, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return s1.compareTo(s2);
}
});
}
//sort using java 8
private void sortUsingJava8(List<String> names) {
Collections.sort(names, (s1, s2) -> s1.compareTo(s2));
}
}
Führen Sie das Programm aus, um das folgende Ergebnis zu erhalten.
Sort using Java 7 syntax: [ Kalpesh Mahesh Naresh Ramesh Suresh ] Sort using Java 8 syntax: [ Kalpesh Mahesh Naresh Ramesh Suresh ]
Hier das sortUsingJava8() Methode verwendet die Sortierfunktion mit einem Lambda-Ausdruck als Parameter, um die Sortierkriterien zu erhalten.
Java