Zuhause Persönliche Finanzen Mit Javas Lambda-Ausdrücken in Ihrer Android-App - Dummies

Mit Javas Lambda-Ausdrücken in Ihrer Android-App - Dummies

Video: Packages in Java 2024

Video: Packages in Java 2024
Anonim

Manchmal, wenn Sie Code im Editor von Android Studio öffnen und die Maus über bestimmte Wörter bewegen, erhalten Sie eine interessante Überraschung. Android Studio teilt Ihnen mit, dass Sie die anonyme innere Klasse durch einen Lambda-Ausdruck ersetzen können.

Sie können einen Lambda-Ausdruck erstellen.

Okay. Was ist ein Lambda-Ausdruck? Für den Anfang ist Lambda ein Buchstabe im griechischen Alphabet, und der Ausdruck Lambda-Ausdruck stammt aus Papieren, die in den 1930er Jahren von dem Mathematiker Alonzo Church geschrieben wurden.

Im Jahr 2013 veröffentlichte Oracle Java 8 und fügte der Java-Sprache Lambda-Ausdrücke hinzu. Im Jahr 2016 stellte Google Android-Entwicklern Funktionen für Java 8 zur Verfügung.

Was genau ist ein Lambda-Ausdruck? Ein Lambda-Ausdruck ist eine prägnante Art, eine Schnittstelle zu deklarieren, die nur eine Methode enthält. Beispielsweise kann ein anonymer OnClickListener nur eine Methode haben, nämlich die onClick -Methode. Sie können also diesen anonymen OnClickListener durch einen Lambda-Ausdruck ersetzen.

Wenn Sie auf die Nachricht antworten, indem Sie Alt + Eingabetaste drücken, bietet Ihnen Android Studio die Option "Mit Lambda ersetzen" an. Wenn Sie diese Option akzeptieren, verwandelt Android Studio Ihren Code in dieses Material.

Paket com. allmycode. a11_05;

Import Android. os. Bündeln;

Import Android. Unterstützung. v7. App. AppCompatAktivität;

Import Android. Widget. Taste;

Import Android. Widget. Textvorschau;

public class MainActivity erweitert AppCompatActivity {

Schaltfläche Schaltfläche;

TextView textView;

@Override

geschützt void onCreate (Bundle savedInstanceState) {

super. onCreate (gespeicherterInstanzStatus);

setContentView (R. layout. Activity_main);

button = (Schaltfläche) findViewById (R. ID. Taste);

-Taste. setOnClickListener (Ansicht -> textView. setText (R. string. you_clicked) );

textView = (TextView) findViewById (R. Id. TextView);

}

}

Dieser Code verwendet einen Lambda-Ausdruck. Das Bild veranschaulicht den Übergang von einer Klasse, die eine Ein-Methoden-Schnittstelle implementiert, in einen Lambda-Ausdruck.

Verwandelt eine Schnittstelle in einen Lambda-Ausdruck.

Beachten Sie die einfache Rolle des Wortes view . Wenn Sie eine onClick -Methode deklarieren, geben Sie der Methode einen Parameter vom Typ View , auch wenn die Anweisungen in der Methode diesen Parameter nicht verwenden. Wenn Sie einen Lambda-Ausdruck für eine onClick -Methode erstellen, wird dem -> -Symbol ein Parametername vorangestellt, auch wenn Sie diesen Parameternamen nicht verwenden. die linke Seite des -> -Symbols.

Um Lambda-Ausdrücke verwenden zu können, müssen Sie bestimmte Voraussetzungen erfüllen. Zum Beispiel müssen Sie Ihren Code mit Java 8 oder höher kompilieren. Ihre Android Studio-Version muss 2. oder höher sein. Und der Build Ihres Projekts. gradle Datei muss den folgenden Code enthalten:

Android {

DefaultConfig {

jackOptions {

aktiviert true

}

}

}

Ein Lambda-Ausdruck kann mehr als einen Parameter auf der linken Seite des -> -Symbols haben. Wenn dies der Fall ist, müssen Sie alle Parameter in Klammern setzen und die Parameter durch Kommas voneinander trennen. Der Ausdruck

(price1, price2) -> price1 + price2

ist ein gültiger Lambda-Ausdruck.

Wenn Sie mit Lambda-Ausdrücken vertraut sind, können Sie Ihren Code viel besser lesbar machen. Was als etwa zehn Zeilen Code begann, kann leicht nur Teil einer Zeile werden.

Mit Javas Lambda-Ausdrücken in Ihrer Android-App - Dummies

Die Wahl des Herausgebers

Bearbeiten in Photoshop Elements 10 Schnellfoto-Bearbeitungsmodus - Schnuller

Bearbeiten in Photoshop Elements 10 Schnellfoto-Bearbeitungsmodus - Schnuller

Schneller Foto-Bearbeitungsmodus ist eine abgespeckte Version des Modus "Full Photo Edit", der einfach grundlegende Fixingtools bereitstellt und mit einigen einzigartigen Funktionen aufwartet, z. B. eine Vorher-Nachher-Vorschau Ihres Bildes. Hier ist ein Schritt-für-Schritt-Workflow, den Sie im Schnellfoto-Bearbeitungsmodus verwenden können, um Ihre Fotos zu reparieren:

Zum Optimieren von Photoshop Elements-Bildern mit Fotoeffekten - Dummies

Zum Optimieren von Photoshop Elements-Bildern mit Fotoeffekten - Dummies

Fotoeffekte in Photoshop Elements 11 funktionieren wie Anwenden von Filtern; Das Dialogfeld "Filtergalerie" bietet Ihnen zahlreiche Optionen zum Anwenden eines Filters. Das geführte Bedienfeld bietet Ihnen Filtereffekte und führt Sie dann durch die Schritte zum Anpassen von Helligkeitswerte, Ändern von Farbton und Sättigung und Durchführen weiterer Anpassungen zum Vervollkommnen des Ergebnisses. Sie ...

Eingeben des Absatztyps in Photoshop Elements 11 - Dummies

Eingeben des Absatztyps in Photoshop Elements 11 - Dummies

Absatztyp in Photoshop Elements 11 ist ähnlich zu dem Text, den Sie in ein Textverarbeitungsprogramm eingeben, mit der Ausnahme, dass er in einem Textfeld oder einem Begrenzungsrahmen enthalten ist. Wenn Sie größere Textabschnitte haben, die Sie in ein Bild eingeben möchten, ist die Eingabe des Textes als Absatztyp die praktischste Option. Während ...

Die Wahl des Herausgebers

PHP-Anweisungen - Dummys

PHP-Anweisungen - Dummys

PHP ist eine Skriptsprache, die speziell für die Verwendung im Internet entwickelt wurde. Es enthält Funktionen, die Sie bei der Programmierung der Aufgaben unterstützen, die für die Entwicklung dynamischer Webanwendungen erforderlich sind. Diese Tabelle gibt einen kurzen Überblick über einige der Anweisungen, die Sie häufig verwenden werden: Anweisung Beschreibung array ("key" => "value", ...); Casts a ...

PHP-Schablonen-Systeme - Schablonen-Systeme

PHP-Schablonen-Systeme - Schablonen-Systeme

Können die Menge an Arbeit reduzieren, die Sie für die Erstellung einer Website in PHP benötigen. Wenn Sie eine Website erstellen, verwenden Sie häufig das gleiche Layout für die gesamte Website. Sie haben eine obere Portion, vielleicht mit einem Menü; ein Hauptinhaltsbereich; und ein unterer Teil, vielleicht mit Links oder ...

Make MySQL Datenbank Änderungen mit den ALTER Query - Dummies

Make MySQL Datenbank Änderungen mit den ALTER Query - Dummies

Die ALTER Query wird verwendet, um die Struktur von eine MySQL-Datenbank. In dieser Liste wird die Syntax für die Änderungen angezeigt, die Sie wahrscheinlich vornehmen möchten: ADD-Spaltenbezeichnung ALTER-Spaltenname SET-DEFAULT-Wert ALTER-Spaltenname DROP DEFAULT CHANGE-Spaltenname newcolname-Definition DROP-Spaltenname MODIFY-Spaltenname RENAME newtablename

Die Wahl des Herausgebers

Hochgeschwindigkeitsdatencaching mit NoSQL - Dummies

Hochgeschwindigkeitsdatencaching mit NoSQL - Dummies

Mit NoSQL haben Sie Hochgeschwindigkeits-Caching. Stellen Sie sich vor, Sie sind Bankangestellte und arbeiten mit drei anderen Kollegen zusammen. Jeder hat eine Reihe von Leuten, die bedient werden sollen. Einer der Kunden bleibt jedoch in der Schlange, um zu fragen, ob sein Scheck bereits eingelöst und der Betrag seinem Konto gutgeschrieben wurde. Wenn Sie ...

Wie man Einsichten aus Big Data kommuniziert - Dummies

Wie man Einsichten aus Big Data kommuniziert - Dummies

Big Data kann helfen, Einblicke zu gewinnen. Unternehmen gewinnen Wettbewerbsvorteile, wenn die richtigen Informationen zur richtigen Zeit an die richtigen Leute geliefert werden. Dies bedeutet, Erkenntnisse und Informationen aus Daten zu extrahieren und sie Entscheidungsträgern auf eine Weise zu vermitteln, die sie leicht verstehen. Schließlich sind Menschen weniger wahrscheinlich zu handeln, wenn sie ...

Zookeeper und HBase Reliability - dummies

Zookeeper und HBase Reliability - dummies

Zookeeper ist ein verteiltes Cluster von Servern, das gemeinsam zuverlässige Koordinations- und Synchronisationsdienste für Cluster-Anwendungen bereitstellt. .. Zugegeben, der Name "Zookeeper" mag auf den ersten Blick eine seltsame Wahl sein, aber wenn Sie verstehen, was es für einen HBase-Cluster tut, können Sie die Logik dahinter sehen. Beim Erstellen und Debuggen von verteilten Anwendungen ...