Jython - Java Koleksiyon Türlerini Kullanma

Python'un yerleşik veri türlerine ek olarak Jython, Java koleksiyon sınıflarını içe aktararak kullanma avantajına sahiptir. java.util package. Aşağıdaki kod, aşağıda verilen sınıfları açıklamaktadır -

  • Add () ile Java ArrayList nesnesi
  • remove()
  • ArrayList sınıfının get () ve set () yöntemleri.
import java.util.ArrayList as ArrayList
arr = ArrayList()
arr.add(10)
arr.add(20)
print "ArrayList:",arr
arr.remove(10) #remove 10 from arraylist
arr.add(0,5) #add 5 at 0th index
print "ArrayList:",arr
print "element at index 1:",arr.get(1) #retrieve item at index 1
arr.set(0,100) #set item at 0th index to 100
print "ArrayList:",arr

Yukarıdaki Jython betiği aşağıdaki çıktıyı üretir -

C:\jython27\bin>jython arrlist.py
ArrayList: [10, 20]
ArrayList: [5, 20]
element at index 1: 20
ArrayList: [100, 20]

Jarray Sınıfı

Jython ayrıca Jarray ObjectPython'da bir Java dizisi oluşturulmasına izin veren. Bir jarray ile çalışmak için, Jython'da basitçe bir dizi türü tanımlayın ve dizide bulunan nesne türü ile birlikte jarrayobject'e iletin. Bir jarray içindeki tüm değerler aynı türde olmalıdır.

Aşağıdaki tablo bir jarray ile kullanılan karakter tip kodlarını gösterir.

Karakter Tür kodu İlgili Java Türü
Z Boole
C kömür
B bayt
H kısa
ben int
L uzun
F yüzer
D çift

Aşağıdaki örnek, jarray'in yapısını gösterir.

my_seq = (1,2,3,4,5)
from jarray import array
arr1 = array(my_seq,'i')
print arr1
myStr = "Hello Jython"
arr2 = array(myStr,'c')
print arr2

Buraya my_seqtam sayılardan oluşan bir demet olarak tanımlanır. Jarray arr1'e dönüştürülür. İkinci örnek, Jarray arr2'ninmySttr stringsıra. Yukarıdaki betiğin çıktısıjarray.py aşağıdaki gibidir -

array('i', [1, 2, 3, 4, 5])
array('c', 'Hello Jython')