Por que eu devo ler este artigo:Quando manipulamos cadeias de caracteres, executamos determinadas ações com frequência, como por exemplo separar uma parte de uma string. A linguagem Dart possui a classe String com propriedades e métodos que implementam muitas das ações de manipulação de strings para utilizarmos em nossos códigos. Conheceremos a classe String com a ajuda de diversos exemplos.

Mesmo em programas mais simples é comum encontrarmos códigos para manipular cadeias de caracteres. Contar caracteres, extrair parte de uma cadeia de caracteres, são apenas alguns tipos de manipulação de strings.

A linguagem Dart possui a classe String que tem propriedades e métodos que implementam muitas ações envolvendo strings como as mencionadas acima e as veremos na prática a seguir.

Strings são imutáveis

Antes de falar sobre a classe String é preciso entender um conceito importante do tipo de dado string. É uma coleção de caracteres que é imutável, por isso quando manipulamos uma string não alteramos a string original, mas criamos uma nova string.

Por exemplo se convertemos todos caracteres de uma string para maiúsculo, essa string não vai mudar, mas geramos uma nova string com caracteres maiúsculos que poderá ser armazenada em uma variável ou constante.

Quando manipulamos strings com métodos da classe String criamos novas strings.

O Criamos uma nova string quando delimitamos uma cadeia de caracteres entre aspas simples ' ou entre aspas duplas ".

Propriedades da classe String

São sete as propriedades mais utilizadas da classe String: codeUnits, hashCode, isEmpty, isNotEmpty, length, runes e runtimeType. Veremos cada uma a seguir através de exemplos práticos.

codeUnits

Essa propriedade retorna uma lista imutável das unidades de código UTF-16 de uma string, como mostra o exemplo de uso na Listagem 1.

String nome = 'Renato';
  print(nome.codeUnits);
  
Listagem 1. Exemplo da propriedade codeUnits da classe String

[82, 101, 110, 97, 116, 111]
Saída no prompt de comando.

Explicando o código:

Linha 1: Declaração da variável nome do tipo String que recebe a string Renato.

Linha 2: O comando print exibe no prompt de comando as unidades de código UTF-16 da variável nome através da propriedade unitCodes.

hashCode

Essa propriedade retorna um hashcode gerado a partir das unidades de código UTF-16 de uma string, como mostra o exemplo da Listagem 2.

O que é hashcode? O código Hash é uma sequência numérica gerada por um algoritmo para identificação de um objeto.

  String mes = 'Janeiro';
  print(mes.hashCode);
  
Listagem 2. Exemplo da propriedade hashCode da classe String

646383925
Saída no prompt de comando.

Explicando o código:

Linha 1: Declaração da variável mes do tipo String que recebe a string Janeiro.

Linha 2: O comando print exibe no prompt de comando o hashcode das unidades de código UTF-16 da variável mes através da propriedade hashCode.

isEmpty

A propriedade isEmpty retorna true se uma string tem valor vazio, assim como no exemplo da Listagem 3.


  String vazia = '';
  print(vazia.isEmpty);
  
Listagem 3. Exemplo da propriedade isEmpty da classe ...

Quer ler esse conteúdo completo? Tenha acesso completo