Database
 sql >> Datenbank >  >> RDS >> Database

Verwenden von JShell in Java 9 in NetBeans 9.0, Teil 2

JShell ist eine Befehlszeilen-Shell zum Ausführen von Java-Code. In einem früheren Artikel, „Using JShell in Java 9 in NetBeans 9.0, Part 1“, haben wir das Starten von JShell in NetBeans 9 besprochen. Wir haben einige Codeschnipsel zum Importieren von Klassen und zum expliziten Erstellen und Verwenden von Variablen getestet. In diesem Fortsetzungsartikel werden wir das implizite Erstellen und Verwenden von Variablen, das Durchführen von String-Vergleichen und das Ausführen von Java-Anweisungen besprechen. Dieser Artikel hat die folgenden Abschnitte:

  • Variablen deklarieren und verwenden (Fortsetzung)
  • String-Vergleich
  • Anweisungen verwenden
  • Zurücksetzen der Java-Shell
  • Schlussfolgerung

Variablen deklarieren und verwenden (Fortsetzung)

Im ersten von zwei Artikeln haben wir das explizite Deklarieren und Verwenden von Variablen besprochen. Als nächstes werden wir die implizite Deklaration und Verwendung von Variablen besprechen.

Eine Variable implizit erstellen

Das implizite Erstellen einer Variablen und das Speichern in einer JShell-Sitzung ist eine einzigartige Funktion von JShell, da eine Java-Quellcodedatei die Angabe von Ausdrücken nicht unterstützt, die implizit als Variablen gespeichert werden. Fügen Sie als Beispiel das folgende Code-Snippet hinzu, das nur die Zahl 1 ist.

1

Eine Variable wird implizit erstellt, wie in Abbildung 1 gezeigt. Standardmäßig hat eine implizit erstellte Variable den Namen $x , wobei x ist der Variablenbezeichner. Hinzufügen von 1 erstellt die Variable $1 , wie in Abbildung 1 gezeigt, aber der Variablenbezeichner ist bis zu einem gewissen Grad willkürlich, da die erste Auswahl möglicherweise bereits von einer anderen Variablen verwendet wird.


Abbildung 1: Variable implizit erstellen

Die neue Variable $1 kann in JShell aufgerufen werden, um seinen Wert auszugeben, wie in Abbildung 2 gezeigt.


Abbildung 2: Aufruf von impliziter Variable

Jeder Ausdruck, der einen Wert liefert, wird in einer Variablen gespeichert. Beispielsweise erzeugt das Addieren von zwei Zahlen implizit eine Variable.

[5]-> 1+0
|  $4 ==> 1

Die implizite Variable kann in JShell aufgerufen werden.

[6]-> $4
|  $4 ==> 1

Die implizite Variable kann in einem anderen Codeausschnitt verwendet werden. Fügen Sie als Beispiel die beiden impliziten Variablen $1 hinzu und $4 , und eine dritte implizite Variable wird erstellt.

[7]-> $1+$4
|  $8 ==> 2

Die Ausgabe der vorhergehenden Befehle ist in Abbildung 3 dargestellt.


Abbildung 3: Implizite Variablen verwenden

Aufrufen von Klassenkonstanten wie Math.PI erstellt auch eine implizite Variable, wie in Abbildung 4 gezeigt.


Abbildung 4: Erstellen einer impliziten Variablen durch Aufrufen einer Klassenkonstante

Eine Zeichenfolge Literal erstellt auch eine implizite Variable (siehe Abbildung 5). Die erstellte implizite Variable kann in einem anderen Codeausschnitt verwendet werden; als Beispiel in einem System.out.println Erklärung. Die implizite Variable kann auch direkt aufgerufen werden.


Abbildung 5: Erstellen einer impliziten Variable aus einem String-Literal

Verengende und erweiternde primitive Konvertierungen werden bei Bedarf in JShell durchgeführt. Als Beispiel das Hinzufügen eines int mit einer Dezimalzahl führt eine Erweiterungskonvertierung durch und erstellt eine implizite Variable mit einer Dezimalzahl, wie in Abbildung 6 gezeigt.


Abbildung 6: Durchführen einer Widening Primitive Conversion

Zeichenfolge Verkettung erzeugt auch implizite Variablen. Verketten Sie beispielsweise zwei Strings Literale.

"Hello"+" "+"JShell"

Eine implizite Variable wird erstellt. Jeder der String Klassenmethoden wie length() und substring(int,int) , kann für die implizit erstellte Variable aufgerufen werden, wie in Abbildung 7 gezeigt.


Abbildung 7: Aufrufen von Methoden für eine implizite Variable

Variablen jeglicher Art können in JShell erstellt werden. Erstellen Sie beispielsweise Variablen vom Typ char , schwimmen , und doppelt zusätzlich zum int Typ.

[1]-> int a=1;
|  a ==> 1
[2]-> int b=5;
|  b ==> 5
[3]-> char c='a';
|  c ==> 'a'
[4]-> float f=1.0f;
|  f ==> 1.0
[5]-> double d=5.0d;
|  d ==> 5.0

Während die /list listet alle Codeschnipsel auf, die /vars Befehl in JShell listet nur die Variablen auf.

[6]-> /vars
|    int a = 1
|    int b = 5
|    char c = 'a'
|    float f = 1.0
|    double d = 5.0

Zuvor hatten wir einen Ausdruck besprochen, in dem eine implizite erweiternde primitive Konvertierung in JShell durchgeführt wird. Verengende und erweiternde primitive Konvertierungen werden ebenfalls auf Zuweisung vorgenommen. Weisen Sie als Beispiel für eine einschränkende primitive Konvertierung die Variable c zu vom Typ char ein int Wert.

[6]-> c=5;| c ==> '