JShell är ett kommandoradsskal för att köra Java-kod. I en tidigare artikel, "Using JShell in Java 9 in NetBeans 9.0, Part 1," diskuterade vi att starta JShell i NetBeans 9. Vi testade några kodavsnitt för att importera klasser och skapa och använda variabler explicit. I den här fortsättningsartikeln kommer vi att diskutera att skapa och använda variabler implicit, utföra strängjämförelser och köra Java-satser. Den här artikeln har följande avsnitt:
- Deklarera och använda variabler (fortsättning)
- Strängjämförelse
- Använda uttalanden
- Återställa Java Shell
- Slutsats
Deklarera och använda variabler (fortsättning)
I den första av två artiklar diskuterade vi att deklarera och använda variabler explicit. Därefter ska vi diskutera deklaration och användning av variabler implicit.
Skapa en variabel implicit
Att skapa en variabel implicit och lagra den i en JShell-session är en funktion som är unik för JShell eftersom en Java-källkodsfil inte stöder angivande av uttryck som implicit lagras som variabler. Som ett exempel, lägg till följande kodavsnitt, som bara är siffran 1.
1
En variabel skapas implicit, som visas i figur 1. Som standard har en implicit skapad variabel namnet $x , där x är variabelidentifieraren. Lägger till 1 skapar variabeln $1 , som visas i figur 1, men variabelidentifieraren är godtycklig till viss del eftersom förstavalet kanske redan används av en annan variabel.
Figur 1: Skapa en variabel implicit
Den nya variabeln $1 kan anropas i JShell för att mata ut dess värde, som visas i figur 2.
Figur 2: Anropar implicit variabel
Alla uttryck som ger ett värde lagras i en variabel. Som ett exempel, att lägga till två siffror skapar en variabel implicit.
[5]-> 1+0 | $4 ==> 1
Den implicita variabeln kan anropas i JShell.
[6]-> $4 | $4 ==> 1
Den implicita variabeln kan användas i ett annat kodavsnitt. Som ett exempel, lägg till de två implicita variablerna $1 och $4 , och en tredje implicit variabel skapas.
[7]-> $1+$4 | $8 ==> 2
Utdata från de föregående kommandona visas i figur 3.
Figur 3: Använda implicita variabler
Anropar klasskonstanter som Math.PI skapar också en implicit variabel, som visas i figur 4.
Figur 4: Skapa en implicit variabel genom att anropa en klasskonstant
En sträng literal skapar också en implicit variabel (se figur 5). Den implicita variabeln som skapas kan användas i ett annat kodavsnitt; som ett exempel, i en System.out.println påstående. Den implicita variabeln kan också anropas direkt.
Figur 5: Skapa en implicit variabel från en bokstavlig sträng
Begränsande och breddande primitiva konverteringar utförs vid behov i JShell. Som ett exempel, att lägga till en int med ett decimaltal utför en utvidgningsomvandling och skapar en implicit variabel med ett decimaltal, som visas i figur 6.
Figur 6: Utför breddande primitiv konvertering
Sträng konkatenation skapar också implicita variabler. Som ett exempel, sammanfoga två strängar bokstavliga ord.
"Hello"+" "+"JShell"
En implicit variabel skapas. Någon av strängen klassmetoder, såsom length() och delsträng(int,int) , kan anropas på den implicit skapade variabeln, som visas i figur 7.
Figur 7: Anropa metoder på en implicit variabel
Variabler av vilken typ som helst kan skapas i JShell. Som ett exempel, skapa variabler av typen char , flyta , och dubbel förutom 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
Medan /listan kommandot listar alla kodavsnitt, /vars kommandot i JShell listar bara variablerna.
[6]-> /vars | int a = 1 | int b = 5 | char c = 'a' | float f = 1.0 | double d = 5.0
Tidigare hade vi diskuterat ett uttryck där en implicit breddande primitiv konvertering görs i JShell. Avsmalnande och vidgande primitiva omvandlingar görs också på uppdrag. Som ett exempel på en avsmalnande primitiv konvertering, tilldela variabeln c av typen char en int värde.
[6]-> c=5;| c ==> '