Euforia - Tipos de dados
Os dados armazenados na memória podem ser de vários tipos. Por exemplo, a idade de uma pessoa é armazenada como um valor numérico e seu endereço é armazenado como caracteres alfanuméricos.
Euphoria tem alguns tipos padrão que são usados para definir as operações possíveis sobre eles e o método de armazenamento de cada um deles.
Euphoria tem os seguintes quatro tipos de dados padrão -
- integer
- atom
- sequence
- object
A compreensão dos átomos e sequências é a chave para a compreensão da Euforia.
Inteiros
Os tipos de dados inteiros Euphoria armazenam valores numéricos. Eles são declarados e definidos da seguinte forma -
integer var1, var2
var1 = 1
var2 = 100
As variáveis declaradas com tipo inteiro devem ser átomos com integervalores de -1073741824 a +1073741823, inclusive. Você pode realizar cálculos exatos em valores inteiros maiores, até cerca de 15 dígitos decimais, mas declará-los como átomo, em vez de inteiro.
Átomos
Todos os objetos de dados em Euphoria são átomos ou sequências. Um átomo é um único valor numérico. Os átomos podem ter qualquer valor de ponto flutuante de precisão dupla ou inteiro. Os átomos de euforia são declarados e definidos da seguinte maneira−
atom var1, var2, var3
var1 = 1000
var2 = 198.6121324234
var3 = 'E'
Os átomos podem variar de aproximadamente -1e300 a + 1e300 com 15 dígitos decimais de precisão. Um personagem individual é umatomque deve ser inserido usando aspas simples. Por exemplo, todas as seguintes declarações são legais -
-- Following is equivalent to the atom 66 - the ASCII code for B
char = 'B'
-- Following is equivalent to the sequence {66}
sentence = "B"
Sequências
Uma sequência é uma coleção de valores numéricos que podem ser acessados por meio de seu índice. Todos os objetos de dados em Euphoria são átomos ou sequências.
O índice de sequência começa em 1, ao contrário de outras linguagens de programação onde o índice de matriz começa em 0. As sequências de euforia são declaradas e definidas da seguinte forma -
sequence var1, var2, var3, var4
var1 = {2, 3, 5, 7, 11, 13, 17, 19}
var2 = {1, 2, {3, 3, 3}, 4, {5, {6}}}
var3 = {{"zara", "ali"}, 52389, 97.25}
var4 = {} -- the 0 element sequence
Uma string de caracteres é apenas um sequencede caracteres que podem ser inseridos usando aspas duplas. Por exemplo, todas as seguintes declarações são legais -
word = 'word'
sentence = "ABCDEFG"
As cadeias de caracteres podem ser manipuladas e operadas como quaisquer outras sequências. Por exemplo, a string acima é totalmente equivalente à sequência -
sentence = {65, 66, 67, 68, 69, 70, 71}
Você aprenderá mais sobre sequência em Euphoria - Sequências .
Objetos
Este é um supertipo de dados em Euphoria que pode assumir qualquer valor, incluindo átomos, sequências ou inteiros. Objetos de euforia são declarados e definidos da seguinte forma -
object var1, var2, var3
var1 = {2, 3, 5, 7, 11, 13, 17, 19}
var2 = 100
var3 = 'E'
Um objeto pode ter um dos seguintes valores -
uma sequência
um átomo
um inteiro
um inteiro usado como um número de arquivo
uma sequência de string ou átomo de um único caractere