logo

Read-Eval-Print Loop (REPL) Java

The Read-Eval-Print Loop vai REPL ir čaulas interfeiss. Šī saskarne nolasa un novērtē katru ievades rindiņu un pēc tam izdrukā rezultātu. The Read-Eval-Print Loop palīdz mums mijiedarboties ar mūsu lietojumprogrammas izpildlaiku, kas atrodas noteiktā stāvoklī. Komandas lasa un novērtē REPL un izdrukājiet rezultātu. Pēc rezultāta izdrukāšanas REPL atgriežas sākumā, lai lasītu, novērtētu un izdrukātu nākamo ievadi.

Read-Eval-Print Loop (REPL) Java

Izmantojot REPL, mēs varam viegli rakstīt un pārbaudīt savu Java kodu, to neapkopojot, un varam redzēt izvadi tieši konsolē.

Java jau nav REPL?

Noteikti REPL ir jābūt noteiktā valodā, piemēram, Java . Taču ne visām valodām ir REPL, un Java ir viena no tām. Java izstrādātāji to ir pieprasījuši visvairāk. Java jau kādu laiku ir bijusi kaut kas līdzīgs REPL kā Java Beanshell. Taču projekts nebija pilnībā nodrošināts REPL ar citām valodām. Šim nolūkam 2016. gadā tika izlaista Java 9, kas nodrošina pilnas funkcijas REPL vidi.

Kāpēc REPL ir tik noderīgs?

Izmantojot REPL, mums nav jākompilē vai jāpārbauda Java kods, izmantojot javac komandu. Pēc REPL izmantošanas,

  1. Java programmas rakstīšanai nav nepieciešams redaktors.
  2. Nav nepieciešams saglabāt Java programmu.
  3. Nav nepieciešams kompilēt Java programmu.
  4. Nav nepieciešams rediģēt, ja rodas kompilēšanas laika vai izpildlaika kļūda.
  5. Nav nepieciešams atkārtot procesu.
Read-Eval-Print Loop (REPL) Java

Mēs varam novērtēt metodes, klases un paziņojumus, neveidojot klasi. Programmu 'Hello World' var uzrakstīt arī, neveidojot klasi.

prioritātes rinda c++

Prasības REPL lietošanai

Izmantošanai ir tikai viena prasība REPL , t.i., mums vajadzēja Java 9 vai jaunāka versija mūsu sistēmā. Ja mūsu sistēmā ir instalēta Java 9, mēs esam gatavi lietošanai REPL . Lai pārbaudītu strāvu Java versija savā sistēmā atveriet komandu uzvedni un ierakstiet šādu komandu:

 java -version 

Read-Eval-Print Loop (REPL) Java

Izmantojot REPL

Zemāk ir daži REPL piemēri, kuros mēs novērtējam matemātiskās izteiksmes, aprēķinām Fibonači sēriju, izveidojam dinamisku klasi, zinām vēsturi un modificējam klasi.

masīvu saraksts sakārtots

1. piemērs: Matemātisko izteiksmju novērtēšana

 jshell> double a = 10; jshell> a= Math.pow(a, 2); jshell> a+20 jshell> /vars jshell> double data = Math.pow(8.3, 5); 

Apraksts:

Pirmajā rindā mēs izveidojam mainīgo 'a' tipa double un uzstādām tā sākotnējo vērtību 10. Pēc tam atrodam mainīgā 'a' kvadrātu un saglabājam to tajā pašā mainīgajā. Pēc tam mainīgajam “a” mēs vienkārši pievienojam 20. Jshell ievietos rezultātu pagaidu mainīgajā '3 ASV dolāri' . Tālāk mēs izpildām '/kuru' komanda, kas parāda mums visus izveidotos mainīgos. Visbeidzot mēs izveidojam mainīgo 'dati' tipa dubultā un uzglabājiet 5thcipara jauda 8.3.

Izvade:

iestatīts java
Read-Eval-Print Loop (REPL) Java

2. piemērs: Fibonači sērijas aprēķināšana

 jshell> int fibo(int no) (no == 1)) ...> return no;e all possible completions; total possible completions ...> else ...> return fibo(no-1)+fibo(no-2); ...> jshell> /methods jshell> fibo(11) jshell> fibo(12) jshell> int[] arr = { 1,2,3,4,5,6}; jshell> for(int i: arr){ ...> System.out.println(fibo(i)); ...> } 

Apraksts:

Pirmajās sešās koda rindās mēs izveidojam metodi Fibonači sērijai. Pēc tam mēs izmantojam /metodes Jshell komanda, kas parāda visas pieejamās metodes. Nākamajās divās rindās mēs pārbaudām fibo () metodi, nododot veselu skaitļu vērtības. Mēs izveidojam masīvu arr lai noteiktu, cik terminus mēs vēlamies iegūt Fibonači sēriju. Tālāk mēs atkārtojam katru arr vērtību, izmantojot katrai cilpai. Mēs nododam katru arr vērtību fibo () metodei un izdrukājam tās atgriešanās vērtību.

Izvade:

Read-Eval-Print Loop (REPL) Java

3. piemērs: REPL atkārtotai izmantošanai

 jshell> int fibo(int no){ ...> return 2; ...> } jshell> for(int i: arr){ ...> System.out.println(fibo(i)); ...> } 

Apraksts:

Iepriekš minētajā kodā mēs izveidojam fibo () metodi ar tādu pašu atgriešanas veidu un argumentu, kādu esam izveidojuši iepriekš. Šajā laikā Jshell ignorē iepriekšējo 'fibo()' metodi ar pašreizējo. Pēc tam katru arr vērtību nododam funkcijai, lai pārliecinātos, vai mūsu fibo () metode ir ignorēta.

Izvade:

Read-Eval-Print Loop (REPL) Java

4. piemērs: klases definēšana

0,06 kā daļu
 jshell> class Student{ ...> public String Name; ...> public int age; ...> public String course; ...> public int semester; ...> public Student(String Name, int age, String course, int semester){ ...> this.Name=Name; ...> this.age=age; ...> this.course = course; ...> this.semester=semester; ...> } ...> public void showData(){ ...> System.out.println('Name= '+ Name); ...> System.out.println('Age= '+ age); ...> System.out.println('Course= '+ course); ...> System.out.println('Semester= '+semester); ...> } ...> } 

Apraksts:

Iepriekš minētajā kodā mēs izveidojam klasi 'Students' , kuriem ir Vārds, vecums, kurss un semestris. Mēs izveidojam konstruktoru, kurā iestatām vērtības šiem mainīgajiem. Pēc konstruktora mēs izveidojam metodi, kas parāda visu mainīgo vērtību katram klases eksemplāram.

Izvade:

Read-Eval-Print Loop (REPL) Java

5. piemērs: klases gadījuma izveide

 jshell> Student s1 = new Student( 'Shubham Rastogi', 18, 'MCA', 4); jshell> Student s2 = new Student( 'Kartik Rastogi', 23, 'MCA', 3); jshell> /vars jshell> s1.showData(); jshell> s2.showData(); 

Apraksts:

objekts Java

Iepriekš minētajā kodā mēs izveidojam divus klases gadījumus un nododam vērtību konstruktoram visiem klases mainīgajiem. Pēc tam mēs palaižam komandu Jshell, lai pārbaudītu, vai s1 un s2 mainīgie ir izveidoti. Visbeidzot, mēs izsaucam metodi showData (), lai parādītu katras instances datus.

Izvade:

Read-Eval-Print Loop (REPL) Java