// DOCS NAVIGATION
Arrays_
SOURCE: content/docs/reference/03-tipos-compostos.md — 03 Tipos Compostos / 1. Arrays
Declaração e Literais / Declaration and Literals
PT-BR:
Arrays são coleções de elementos do mesmo tipo. São criados via literais [elem1, elem2, ...]. O tipo é inferido a partir dos elementos.
EN-US:
Arrays are collections of elements of the same type. They are created via [elem1, elem2, ...] literals. The type is inferred from the elements.
module arrays
from std.io import println
public func main() {
// Arrays de inteiros / Integer arrays
let numeros = [1, 2, 3, 4, 5]
let primos = [2, 3, 5, 7, 11, 13]
// Arrays de strings / String arrays
let nomes = ["Alice", "Bob", "Carol"]
// Arrays de floats / Float arrays
let temperaturas = [36.5, 37.0, 38.2]
// Arrays de booleanos / Boolean arrays
let flags = [true, false, true, true]
}
Indexação / Indexing
PT-BR:
Arrays são indexados com array[indice], começando em 0.
EN-US:
Arrays are indexed with array[index], starting at 0.
let arr = [10, 20, 30, 40, 50]
let primeiro = arr[0]
// 10
let segundo = arr[1]
// 20
let ultimo = arr[4]
// 50
Modificação / Modification
PT-BR:
Elementos de array podem ser modificados com atribuição indexada.
EN-US:
Array elements can be modified with indexed assignment.
let arr = [1, 2, 3, 4, 5]
arr[0] = 99
// [99, 2, 3, 4, 5]
arr[4] = 100
// [99, 2, 3, 4, 100]
Iteração / Iteration
let arr = [10, 20, 30, 40, 50]
// Com for e range / With for and range
for i in 0..5 {
println(f"arr[{i}] = {arr[i]}")
}
// Com while / With while
let i = 0
while i < 5 {
println(f"{arr[i]}")
i = i + 1
}
// Somando todos os elementos / Summing all elements
let soma = 0
for i in 0..5 {
soma = soma + arr[i]
}
// soma == 150
Arrays como Parâmetros / Arrays as Parameters
func soma_array(arr: [int], tamanho: int) returns int {
let total = 0
for i in 0..tamanho {
total = total + arr[i]
}
return total
}
public func main() {
let meu_arr = [1, 2, 3, 4, 5]
let s = soma_array(meu_arr, 5)
// 15
}
Arrays Multidimensionais / Multidimensional Arrays
// Array de arrays (matriz) / Array of arrays (matrix)
let matriz = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
let elem = matriz[1][2]
// 6 (linha 1, coluna 2)