Jython - usando tipos de coleção Java

Além dos tipos de dados integrados do Python, Jython tem o benefício de usar classes de coleção Java importando o java.util package. O código a seguir descreve as classes fornecidas abaixo -

  • Objeto Java ArrayList com add ()
  • remove()
  • métodos get () e set () da classe ArrayList.
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

O script Jython acima produz a seguinte saída -

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

Jarray Class

Jython também implementa o Jarray Object, que permite a construção de um array Java em Python. Para trabalhar com um jarray, basta definir um tipo de sequência em Jython e passá-lo para o jarrayobject junto com o tipo de objeto contido na sequência. Todos os valores em um jarray devem ser do mesmo tipo.

A tabela a seguir mostra os códigos de tipo de caractere usados ​​com um jarray.

Character Typecode Tipo Java Correspondente
Z boleano
C Caracteres
B byte
H baixo
Eu int
eu grandes
F flutuador
D em dobro

O exemplo a seguir mostra a construção de jarray.

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

Aqui my_seqé definido como uma tupla de inteiros. Ele é convertido para Jarray arr1. O segundo exemplo mostra que Jarray arr2 é construído a partir demySttr stringseqüência. A saída do script acimajarray.py é o seguinte -

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