Neste tutorial, aprenderemos como podemos acessar fatias de coleção, como vetores, matrizes, strings, etc.
Ferrugem criar fatia
Conforme declarado na seção acima, uma fatia é um tipo emprestado que mantém o ponteiro para o endereço dos dados.
Portanto, criamos uma fatia pegando uma parte do contêiner de dados existente. Não podemos criar uma fatia como faria uma variável normal.
Para criar uma fatia, especificamos o índice inicial e final dentro de um par de colchetes quadrados. O índice de partida e final é separado usando a notação de ponto duplo.
Podemos expressar esta sintaxe como mostrado:
deixe algum_string = "value";Observe que podemos cortar qualquer coleção válida em ferrugem. Veja o exemplo abaixo que cria uma fatia de um tipo de string.
fn main ()O código acima cria uma fatia de uma string a partir do índice 0 ao índice 9. Observe que o último é exclusivo. Isso significa que a fatia conterá o valor do índice de início ao fim - 1.
Observe o Operador? Isso ocorre porque a fatia é uma referência aos dados reais na coleção especificada.
O código acima deve retornar:
Rust também nos permite pular o índice inicial e final. Por exemplo, se estivermos iniciando a fatia do índice 0, podemos omitir o 0 e apenas definir o índice final. Um exemplo é como mostrado:
fn main ()Observe que o exemplo acima define o intervalo de índice como… 9. Isso significa começar do índice 0 ao índice 9.
Podemos fazer o mesmo para o Índice de Ending. Considere o código de exemplo mostrado abaixo:
fn main ()Isso deve retornar:
Além de uma corda, você pode ter uma fatia de uma matriz. Um exemplo é como mostrado abaixo:
fn main ()Isso deve retornar uma fatia de matriz com os valores no intervalo especificado.
[200, 300]Podemos cortar um vetor como mostrado:
fn main ()Fatia mutável
Também podemos criar fatias mutáveis definindo a palavra -chave mut em uma fatia. Um exemplo é como mostrado:
fn main ()Você pode mudar a matriz devolvida como você achar melhor.
Conclusão
Este guia abrange os fundamentos de trabalhar com fatias na linguagem de ferrugem. Você pode verificar a documentação para explorar mais.
Obrigado pela leitura!