logo

Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)

Okuma-Değerlendirme-Yazdırma Döngüsü veya TEKRAR bir kabuk arayüzüdür. Bu arayüz, girişin her satırını okur ve değerlendirir ve ardından sonucu yazdırır. Okuma-Değerlendirme-Yazdırma Döngüsü belirli bir durumda bulunan uygulama çalışma zamanımızla etkileşim kurmamıza yardımcı olur. Komutlar kullanıcı tarafından okunur ve değerlendirilir. TEKRAR ve sonucu yazdırın. Sonucu yazdırdıktan sonra REPL, bir sonraki girdimizi okumak, değerlendirmek ve yazdırmak için başlangıca geri döner.

Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)

REPL kullanarak Java kodumuzu derlemeden kolayca yazıp test edebilir ve çıktısını doğrudan konsolda görebiliriz.

Java'da zaten REPL yok mu?

Kesinlikle, bir REPL aşağıdaki gibi yerleşik bir dilde olmalıdır: Java . Ancak tüm dillerde REPL yoktur ve Java da bunlardan biridir. Java geliştiricileri buna en çok ihtiyaç duydu. Java bir süredir Java Beanshell olarak REPL gibi bir şeye sahipti. Ancak proje diğer dillerde tam özellikli bir REPL değildi. Bunun için 2016 yılında tam işlevli bir REPL ortamı sunan Java 9 piyasaya sürüldü.

REPL neden bu kadar faydalı?

REPL'i kullanarak Javac komutunu kullanarak Java kodumuzu derlememize veya test etmemize gerek kalmaz. REPL'i kullandıktan sonra,

  1. Java programını yazmak için editöre gerek yoktur.
  2. Java programını kaydetmenize gerek yok.
  3. Java programını derlemenize gerek yok.
  4. Herhangi bir derleme zamanı veya çalışma zamanı hatası gelirse düzenleme yapmanıza gerek yoktur.
  5. İşlemi tekrarlamaya gerek yok.
Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)

Yöntemleri, sınıfları ve ifadeleri sınıf oluşturmadan değerlendirebiliriz. 'Merhaba Dünya' programı sınıf oluşturulmadan da yazılabilir.

python baytları dizeye dönüştürür

REPL kullanımına ilişkin gereksinimler

Kullanmanın tek şartı var TEKRAR yani, sahip olmalıydık Java 9 veya sistemimizdeki daha yüksek bir sürüm. Sistemimizde Java 9 kurulu ise kullanıma hazırız TEKRAR . Akımı kontrol etmek için Java sürümü sisteminizde komut istemini açın ve aşağıdaki komutu yazın:

 java -version 

Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)

REPL'i kullanma

Aşağıda matematiksel ifadeleri değerlendirdiğimiz, Fibonacci serisini hesapladığımız, dinamik bir sınıf oluşturduğumuz, geçmişini bildiğimiz ve sınıfı değiştirdiğimiz bazı REPL örnekleri verilmiştir.

Örnek 1: Matematiksel İfadelerin Değerlendirilmesi

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

Tanım:

Java sıralama dizisi

İlk satırda bir değişken oluşturuyoruz 'A' double tipini alıp başlangıç ​​değerini 10 olarak ayarlıyoruz. Daha sonra 'a' değişkeninin karesini bulup aynı değişkende saklıyoruz. Bundan sonra 'a' değişkenine 20 ekliyoruz. Jshell sonucu geçici bir değişkene koyacaktır '3$' . Daha sonra şu işlemi yürütüyoruz: '/kimin' bize oluşturulan tüm değişkenleri gösteren komut. Sonunda bir değişken oluşturuyoruz 'veri' double yazın ve 5'i saklayıno8.3 rakamının kuvveti.

Çıktı:

hata: ana sınıf bulunamadı veya yüklenemedi
Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)

Örnek 2: Fibonacci Serisinin Hesaplanması

 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)); ...> } 

Tanım:

Kodun ilk altı satırında Fibonacci serisi için bir yöntem oluşturuyoruz. Bundan sonra şunu kullanıyoruz: /yöntemler Bize mevcut tüm yöntemleri gösteren Jshell komutu. Sonraki iki satırda test ediyoruz fibo() tamsayı değerleri ileterek yöntem. Bir dizi oluşturuyoruz varış Fibonacci serisini kaç terim elde etmek istediğimizi belirlemek için. Daha sonra, her döngü için arr değerini kullanarak yineliyoruz. Dizinin her değerini fibo() yöntemine iletiyoruz ve dönüş değerini yazdırıyoruz.

Çıktı:

Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)

Örnek 3: Yeniden kullanım için REPL

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

Tanım:

java'da jvm

Yukarıdaki kodda, daha önce oluşturduğumuzla aynı dönüş tipine ve argümana sahip bir fibo() yöntemi oluşturuyoruz. Şu anda, Jshell öncekini geçersiz kılar 'fibo()' mevcut olanla yöntem. Daha sonra, fibo() yöntemimizin geçersiz kılınıp kılınmadığından emin olmak için arr'ın her değerini fonksiyona iletiriz.

Çıktı:

Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)

Örnek 4: Sınıfı tanımlama

 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); ...> } ...> } 

Tanım:

Yukarıdaki kodda sınıf oluşturuyoruz 'Öğrenci' Adı, yaşı, dersi ve yarıyılı olan. Bu değişkenlere değerleri ayarladığımız bir kurucu oluşturuyoruz. Yapıcıdan sonra sınıfın her bir örneği için tüm değişkenlerin değerini gösteren bir yöntem oluşturuyoruz.

Çıktı:

Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)

Örnek 5: Sınıfın bir örneğini oluşturma

 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(); 

Tanım:

Android telefondaki iPhone emojileri

Yukarıdaki kodda sınıfın iki örneğini oluşturuyoruz ve tüm sınıf değişkenleri için değeri yapıcıya aktarıyoruz. Daha sonra s1 ve s2 değişkenlerinin oluşturulup oluşturulmadığını kontrol etmek için Jshell komutunu çalıştırıyoruz. Son olarak her örneğin verilerini görüntülemek için showData() yöntemini çağırıyoruz.

Çıktı:

Java'da Okuma-Değerlendirme-Yazdırma Döngüsü (REPL)